Как мне реализовать скрипт подключения до фиксации в SVN, который вызывает dos2unix для проверки зарегистрированного файла - PullRequest
8 голосов
/ 07 сентября 2008

Мне было интересно, имел ли кто-нибудь здесь опыт написания сценариев такого типа и могли бы они дать мне несколько советов.

Я хотел бы изменить этот скрипт , чтобы проверить, что в файле регистрации нет возврата каретки в формате EOL. Формат EOL - CR LF в Windows и LF в Unix. Когда пользователь регистрирует код в формате Windows. Он больше не компилируется в Unix. Я знаю, что это может быть сделано на стороне клиента, но мне нужно сделать эту проверку на стороне сервера. Для этого мне нужно сделать следующее:

1) Убедитесь, что файл, который я проверяю, не является двоичным, я не знаю, как это сделать с помощью svnlook, я должен проверить тип файла mime: Красная книга не указывает на это ясно, или я, должно быть, не видел это.

2) Я хотел бы запустить команду dos2unix , чтобы проверить, что файл имеет правильный формат EOL. Я бы сравнил вывод команды dos2unix с исходным файлом. Если между ними есть различия, я выдаю сообщение об ошибке клиенту и отменяю регистрацию.

Я хотел бы получить ваши комментарии / отзывы об этом подходе.

Ответы [ 2 ]

4 голосов
/ 08 сентября 2008

Я думаю, что в этом случае вы можете избежать скрипта ловушки фиксации, используя свойство svn:eol-style, как описано в SVNBook:

Таким образом, SVN может беспокоиться об окончании вашей строки.

Удачи!

1 голос
/ 07 сентября 2008

Что именно вы пытаетесь сделать?

Конечно, есть множество мест, где можно узнать о svn хуках предварительной фиксации (например, здесь , здесь и в Красной книге ), но зависит от того, что вы пытаетесь сделать и что доступно в вашей системе.

Можете ли вы быть более конкретным?

...