Запретить фиксацию SVN без описания
-
21-08-2019 - |
Вопрос
У меня есть репозиторий SVN, и мне нужно, чтобы коммиты не выполнялись, если не введено описание.Возможно ли это сделать, желательно на стороне сервера?(Пользователи используют несколько разных инструментов для взаимодействия с репозиторием;хотя если бы это было возможно на стороне клиента в TortoiseSVN, это облегчило бы проблему)
Google не очень помог, можете ли вы дать мне несколько советов?
Спасибо.
Решение
Да, вам нужно написать в репозитории перехватчик предварительной фиксации, который завершается с ошибкой и отправляет обратно клиенту соответствующее сообщение об ошибке.
Если вы заглянете в каталог «hooks» только что созданного репозитория, вы обнаружите pre-commit.tmpl
файл.Он содержит инструкции, и образец даже проверяет, содержит ли сообщение журнала текст — именно то, что вам нужно.
Итак, вы должны иметь возможность переименовывать pre-commit.tmpl
к pre-commit
и сделайте его исполняемым, а затем запустите его.Я предлагаю вам попробовать это в репозитории-песочнице, прежде чем создавать производственный, чтобы разгневанные пользователи не смогли совершить коммит, пока вы все сделаете правильно :)
Другие советы
Вы можете сделать это, используя перехватчики репозитория.В вашем случае вам нужен перехватчик предварительной фиксации, который проверит сообщение и отклонит фиксацию, если оно пусто.