Вставьте информацию о ревизии в файл заголовка в VisualSVN - PullRequest
2 голосов
/ 23 марта 2009

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

Ответы [ 2 ]

4 голосов
/ 23 марта 2009

Вы можете управлять перехватами серверов через Диспетчер серверов VisualSVN:

  1. Запустите диспетчер серверов,
  2. Выберите репозиторий,
  3. Действие | Все задачи | Управление крючками.

В диалоговом окне сообщается, что номер ревизии является вторым аргументом. С номером ревизии вы можете использовать svn.exe и svnlook.exe для выполнения множества других задач ... любое использование?

1 голос
/ 12 октября 2012

Технически, вы можете использовать скрипт перехвата пост-фиксации для выполнения задачи. Однако вы должны понимать, что НЕ ДОЛЖНЫ изменять саму исходную транзакцию (т.е. не пытайтесь перехватить фиксацию start- или pre- . Фиксация дополнительного файла с деталями ревизии должна быть выполнено как отдельное.

Чтобы получить дополнительные данные ревизии, вы можете использовать svnlook.exe в своем хуке .

См. SVNBook :

В то время как скрипты ловушек могут делать почти все, есть одно измерение в какие авторы сценариев хуков должны проявлять сдержанность: не изменять зафиксируйте транзакцию используя скрипты хуков . Хотя это может быть заманчиво использовать скрипты ловушек для автоматического исправления ошибок, недостатков или Нарушения политики, присутствующие в файлах, которые принимаются, это может сделать вызвать проблемы. Subversion хранит кэши на стороне клиента определенных битов данные хранилища, и если вы измените транзакцию фиксации таким образом, эти кэши становятся неоправданно устаревшими. Это несоответствие может привести к удивительное и неожиданное поведение. Вместо изменения транзакции, вы должны просто подтвердить транзакцию в предварительно зафиксировать хук и отклонить коммит, если он не соответствует желаемому требования. В качестве бонуса ваши пользователи узнают ценность осторожных, ориентированные на соблюдение привычки работы.

...