Хук Subversion multi checkout post-commit?

Хук Subversion multi checkout post-commit?

Название, должно быть, звучит странно, но я пытаюсь добиться следующего:

Расположение репозитория SVN: /home/flx/svn/flxdev Структура репозитория SVN "flxdev":

 + Project1
 ++ files
 + Project2
 + Project3
 + Project4

Я пытаюсь настроить посткоммит-хук, который автоматически проверяется на другом конце, когда я делаю коммит.

В документе, опубликованном после коммита, явно указано следующее:

# POST-COMMIT HOOK
#
# The post-commit hook is invoked after a commit.  Subversion runs
# this hook by invoking a program (script, executable, binary, etc.)
# named 'post-commit' (for which this file is a template) with the
# following ordered arguments:
#
#   [1] REPOS-PATH   (the path to this repository)
#   [2] REV          (the number of the revision just committed)

Поэтому я выполнил следующую команду для проверки:

REPOS="$1"
REV="$2"
echo "Updated project $REPOS to $REV"

Однако, когда я редактирую файлы в Project1, например, это выводит"Обновлен проект /home/flx/svn/flxdev до версии 1016"

Я бы хотел, чтобы это было:"Обновлен проект Project1 до 1016"

Наличие этой переменной позволяет мне указать, что нужно делать разные действия для каждого проекта после фиксации. Как мне указать параметр проекта?

Спасибо!

Деннис

решение1

Использовать svnlook.

Быстро и грубо было бы попробовать что-то вроде:

REPOS="$1"
REV="$2"
CHANGED_DIRS="`/usr/bin/svnlook -r $REV dirs-changed $REPOS`"

echo "Updated paths $CHANGED_DIRS in revision $REV"

Вы можете попробовать запустить svnlook help; он выведет список различных команд, которые вы можете использовать/информацию, которую вы можете получить.

Связанный контент