Обертывание крюка SVN Python в пакетный файл Windows - PullRequest
2 голосов
/ 14 февраля 2011

У меня есть хук предварительной фиксации SVN, который ранее находился на сервере Linux.Сейчас я пытаюсь перенести вещи на сервер Windows (Server 2003).

Этот хук был написан на Python, который отлично работал на Linux с его строкой #!/usr/bin/env python вверху.Однако Windows не работает таким образом и требует, чтобы хуки были пакетными файлами (или другими форматами, но все же не Python).

Важно то, что аргументы передаются в сценарий и код выходавозвращается к вызывающему процессу (серверу SVN), чтобы он знал, разрешать ли фиксацию или нет.Я почти ничего не знаю о .bat синтаксисе файла, но я подумал, что что-то вроде этого поможет:

C:\Python26\python.exe pre-commit.py %1 %2

Прав ли я, думая, что это самый простой способ обернуть скрипт Python?Будет ли он автоматически возвращать код завершения скрипта?

1 Ответ

2 голосов
/ 15 февраля 2011

Чтобы ответить на мой собственный вопрос: это почти работает.Код выхода определяется через переменную ERRORLEVEL, но из-за пустого окружения путь к сценарию должен быть полностью указан.К счастью, первый аргумент содержит местоположение хранилища, поэтому он просто:

C:\Python26\python.exe %1\hooks\pre-commit.py %1 %2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...