Сценарий запуска, если есть определенные изменения до и после слияния на Jenkins - PullRequest
1 голос
/ 01 апреля 2019

Я пытаюсь заставить Дженкинса запустить конкретный сценарий, если существует коммит слияния с главной веткой, в котором изменяется конкретная строка в файле конфигурации.Проверить фиксацию слияния на master легко.Проблема в том, что я не могу понять, как проверить разницу до и после слияния.

Я пытался использовать git diff, чтобы сделать это в сценарии с помощью оператора if.Лучший пример, который мне показался близким к правильному различию:

git diff -G'changed_field=' HEAD^ HEAD -- config.cfg

Поскольку по выводу на консоль задания трудно точно понять, что происходит в Jenkins, все, что я могу понять, эточто оно не подхватывает изменение, так как я не вижу никакого выхода из этого.Разница работает, когда я запускаю ее в своей локальной ветке, чтобы проверить мои последние 2 коммита в master.

1 Ответ

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

Если HEAD является коммитом слияния, вы можете, по крайней мере, сделать:

git show @
# or, more precisely:
git show @:/config.cfg

С git show man page :

Для коммитов это показываетсообщение журнала и текстовый diff.
Он также представляет коммит слияния в специальном формате, созданном git diff-tree --cc.

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

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