Как автоматизировать изменение расширения файла для файлов Matlab, отправленных на GitHub? - PullRequest
5 голосов
/ 25 мая 2011

Я начал использовать Github для размещения большей части своего кода, включая мой код Matlab.Оказывается, синтаксис Github выделяет код, основанный на его расширении, а не на содержании файла.Это не так здорово для Matlab m файлов.Они распознаются как файлы Objective-C, также .m, и неправильно идентифицируются / выделяются.Github выделяет файлы Matlab m, если они имеют расширение .matlab, но проблема в том, что Matlab отказывается запускать файлы без расширения .m.Я не смог придумать решение, так как я хотел бы, чтобы мои файлы Matlab хорошо воспроизводились как с Github, так и с Matlab.Итак, вот пара вопросов:

  1. Есть ли способ преобразовать все файлы .m в расширения .matlab при передаче в Github?Для этого также потребуется конвертировать файлы .matlab в расширения .m при извлечении или клонировании из Github?

  2. Если 1. невозможно, есть ли способ заставить Matlab запускать файлыкоторые имеют расширение .matlab?

Если да, то 1 или 2, мне бы хотелось несколько советов или примеров, как это сделать.

Ответы [ 2 ]

3 голосов
/ 25 мая 2011

Вы можете использовать git hooks, чтобы выполнить пункт 1 в вашем вопросе. Если вы заглянете в .git/hooks/, вы найдете несколько примеров, которые вы можете использовать (что объясняют различные файлы здесь ). По сути, все, что вам нужно сделать, это добавить хук пост-получения, который будет переименовывать файлы с .m в .matlab на GitHub, и хук пост-выборки или пост-тяги (может быть, здесь немного меняются терминологии), который будет переименуйте их обратно в .m файлы.

Кроме того, взгляните на некоторые связанные вопросы по git-хукам на SO: 1 , 2 , 3 , 4 и многие другие ...

Тем не менее, я согласен с Алексом, что вообще не стоит менять расширение между репозиториями, так как вы можете в конечном итоге нарушать код для тех, кто может использовать ваши скрипты.

1 голос
/ 26 июля 2011

Проверьте, будет ли Github уважать ваши файлы атрибутов.Если это так, то установите шаблон для * .m и установите соответствующие атрибуты, чтобы получить правильный стиль просмотра.

Файл атрибутов также является местом для нормализации matlab LF eol = LF (даже в Windows) ГИТ-CRLF-преобразование-в-м-Matlab-файлы

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...