Есть ли способ сделать настраиваемую ловушку фиксации хуком "по умолчанию" при создании репозиториев?
Помимо девяти стандартных хуков, установленных в новый репозиторий с помощью команды svnadmin create / path / to / repo (start-commit, pre / post-commit, pre / post-revprop-change, pre / post-lock и pre / post-unlock), я не знаю способа, чтобы дополнительные хуки автоматически включались в качестве хуков "по умолчанию" для всех вновь создаваемых репозиториев.
Я полагаю, вы могли бы создать сценарий оболочки оболочки для создания новых репозиториев, который вызывает команду svnadmin create с переменной, установленной для пути к репозиторию, с последующим копированием настраиваемого крючка фиксации в папку path / to / repo / hooks и использовать его для все новые репозитории.
Наконец, поскольку вы упомянули, что этот пользовательский хук, в частности, является хук фиксации, я должен повторить предупреждение, данное Контроль версий с помощью Subversion при обсуждении скрипты перехвата (курсив мой):
Хотя сценарии ловушек могут делать практически все, есть одно измерение, в котором авторы сценариев ловушек должны проявлять сдержанность: не изменяйте транзакцию фиксации, используя скрипты ловушки. Хотя может возникнуть соблазн использовать сценарии ловушек для автоматического исправления ошибок, недостатков или нарушений политики, присутствующих в фиксируемых файлах, это может вызвать проблемы. Subversion хранит клиентские кеши определенных битов данных репозитория, и если вы измените транзакцию фиксации таким образом, эти кеши станут неизменно устаревшими. Это несоответствие может привести к неожиданному и неожиданному поведению. Вместо того, чтобы изменять транзакцию, вы должны просто проверить транзакцию в ловушке предварительной фиксации и отклонить фиксацию, если она не соответствует желаемым требованиям. В качестве бонуса ваши пользователи узнают ценность осторожных рабочих привычек, ориентированных на соблюдение требований.