Как я могу добавить несколько SVN Hooks - PullRequest
3 голосов
/ 27 мая 2010

У меня есть несколько (в данном случае, pre-commit) хуков, которые я хотел бы запустить во время одного и того же события. Прямо сейчас все они являются просто сценариями оболочки, так что я знаю, что мог бы просто объединить их, чтобы заставить их все работать. Однако в будущем дополнительные сценарии могут быть написаны также на Perl, PHP или другом языке.

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

Ответы [ 3 ]

1 голос
/ 03 марта 2012

Вы можете попробовать Perl-модуль SVN :: Hooks , который позволяет вам реализовать и интегрировать множество хуков в одном файле конфигурации, который даже можно сохранить версионным в том же репозитории.

(Раскрытие: я автор этого модуля.)

1 голос
/ 27 мая 2010

Вы можете просто вызвать каждый сценарий из одного сценария предварительной фиксации в SVN:

#!/bin/sh

sh do_this.sh
php do_that.php
...

Вам даже не нужно упоминать имена исполняемых файлов (sh или php), если вы используете правильный шебанг в своих скриптах.

0 голосов
/ 08 мая 2012

Как и в случае решения @ Gnustavo на основе Perl, я также обнаружил некоторые другие системы (на основе PHP), например

Оба проекта (и другие 'SVN Hooks') потерпят неудачу при фиксации в случае сбоя тестов.

...