hudson - запускать тесты только при изменении конкретной ветви кода - PullRequest
1 голос
/ 28 мая 2011

В настоящее время я использую Hudson для сборки и тестирования приложений на python и c ++, используя git в качестве бэкэнда.

Мне было интересно, есть ли хороший способ установить «запускать тест X только в том случае, если изменились файлы в каталоге / foo / bar / baz».

РЕДАКТИРОВАТЬ: Да, я знаю, что существуют git-hooks, но мне было интересно, как определить дельту между последней проверенной ревизией и текущей ревизией.

1 Ответ

0 голосов
/ 31 мая 2011

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

РЕДАКТИРОВАТЬ: Вы могли бы сделать что-то вроде этого:

  1. Получить SHA последнего коммита на сервере (git rev-parse origin / master)
  2. Получить SHA последнего коммита в вашей локальной ветке (git rev-parse master)
  3. Используйте два SHA, чтобы выполнить на сервере 'git diff - name-only SHA1 SHA2', чтобы проверить, попал ли коммит в ваш каталог.

--name-only вернет только измененные файлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...