Как я могу добавить одну пост-фиксацию для нескольких репозиториев в хуках Subversion - PullRequest
1 голос
/ 18 марта 2011

У нас есть настройка subversion, например / var / svn / repoA, / var / svn / repoB, / var / svn / repoC и т. Д. Мы используем Redmine для управления проектами.

Для автоматизации некоторых задач, таких как обновлениеВ проектах Redmine мы используем хук Subversion post-commit.

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

Я пытаюсь выяснить, возможно ли (и если да, то как) использовать один хук после фиксации для всех репозиториев.

Спасибо.

Ответы [ 2 ]

2 голосов
/ 18 марта 2011

использовать символические ссылки на один хук после фиксации

0 голосов
/ 01 апреля 2011

У нас была похожая проблема, решение почти такое же хорошее, как использование одного скрипта-хука после фиксации.Я написал ОДИН единственный скрипт, который выполняет всю работу по интеграции Redmine.Этот скрипт принимает в качестве входных данных идентификатор проекта в Redmine.Все, что нам теперь нужно сделать, - это вызвать скрипт интеграции из скрипта ловушки post-commit, для каждого хранилища, передав идентификатор проекта Redmine.Итак, да, каждый репозиторий должен иметь свой собственный хук после фиксации, но это просто вызов одной строки в другой скрипт с параметром.

Con:

  • Вы будетепо-прежнему есть один хук после фиксации для каждого хранилища.ОДНАКО, это всего лишь однострочный скрипт, передающий идентификатор проекта Redmine в качестве параметра.Это не изменится все время, не так ли?

Плюсы:

  • Когда есть изменения, вы будете менять только скрипт интеграции.Вы никогда не будете касаться хуков пост-фиксации

  • Со временем вам может понадобиться выполнить различные действия в разных проектах / репозиториях.Это выполнимо с представленным подходом.Вы не получаете такой гибкости, используя подход с использованием единого пост-фиксации хука.В конце концов, именно поэтому у вас есть хук post-commit для каждого хранилища.Возможно, у вас даже есть другой трекер проблем для какого-либо хранилища, верно?

...