Вопрос

У меня есть репозиторий SVN, и мне нужно, чтобы коммиты не выполнялись, если не введено описание.Возможно ли это сделать, желательно на стороне сервера?(Пользователи используют несколько разных инструментов для взаимодействия с репозиторием;хотя если бы это было возможно на стороне клиента в TortoiseSVN, это облегчило бы проблему)

Google не очень помог, можете ли вы дать мне несколько советов?

Спасибо.

Это было полезно?

Решение

Да, вам нужно написать в репозитории перехватчик предварительной фиксации, который завершается с ошибкой и отправляет обратно клиенту соответствующее сообщение об ошибке.

Если вы заглянете в каталог «hooks» только что созданного репозитория, вы обнаружите pre-commit.tmpl файл.Он содержит инструкции, и образец даже проверяет, содержит ли сообщение журнала текст — именно то, что вам нужно.

Итак, вы должны иметь возможность переименовывать pre-commit.tmpl к pre-commit и сделайте его исполняемым, а затем запустите его.Я предлагаю вам попробовать это в репозитории-песочнице, прежде чем создавать производственный, чтобы разгневанные пользователи не смогли совершить коммит, пока вы все сделаете правильно :)

Другие советы

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

А FreeBSD В проекте есть несколько примеров, которые вы можете использовать.Смотрите публику SVN-репо с крючками.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top