Хвост после обновления SVN для проекта?

Кажется, что перехваты после обновления применяются ко всей настройке SVN на машине, но я собираюсь установить отдельные перехваты для каждого проекта. Из того, что я вижу, вы устанавливаете свои хуки в настройках, которые являются глобальными.

Любая идея относительно того, как я могу снять хуки после обновления для проекта?

3 ответа

Решение

На самом деле это просто - вставьте код (регулярное выражение для пути проекта) в ваш хук, который ничего не делает, если это не тот проект, который вы хотели подключить.

Если вам нужно знать путь к хранилищу обновленной рабочей копии, используйте svninfo.

Первый параметр ловушки post-commit - это путь к хранилищу, что означает, как уже упоминалось ранее, использование регулярного выражения для фильтрации проекта, который вам нравится делать.

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

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

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

Другие вопросы по тегам