Что означает PR-слияние?

В Jenkins, что это будет делать, если я упомяну Branch Specifier как

  • 1 источник/pr/${pullRequestId}/от
  • 2 источник/пр/${pullRequestId}/слияние

Означает ли это, что в первом случае сборка будет создана из того кода, который будет в запросе на вытягивание. а во втором случае изменения в PR будут применены как патч к целевой ветке локально, внутри рабочей области Jenkins, и сборка будет запущена на том же.


person thinkingmonster    schedule 14.01.2016    source источник


Ответы (1)


Можете ли вы подтвердить, что используете Atlassian Stash для управления репозиторием Git?

Когда вы создаете PR, Stash попробует «ленивое» слияние (в идентификаторе /merge refs). Если целевая ветвь перемещается, Stash попытается выполнить новое слияние.

Некоторое объяснение этого ленивого слияния здесь.

Если вы запускаете сборку Jenkins с помощью хука Stash, Stash отправит всю информацию PR в Jenkins (pullRequestId, из SHA1, слияние SHA1,...).

Таким образом, с вашей работой Jenkins вы можете попробовать слияние (origin/pr/${pullRequestId}/from to origin/master, если master является вашей целевой веткой) и вы можете создать результат слияния.

Это то, что мы делаем в моей компании с этими настройками и Stash Плагин построителя запросов на вытягивание:

введите здесь описание изображения

Работает хорошо :)

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

После проверки PR, если разработчик нажмет кнопку Merge, он попытается объединить код в целевой ветке.

Вы можете установить некоторые параметры слияния в этом файле свойств .

person Bruno Lavit    schedule 14.01.2016
comment
Спасибо, я изучу это. Я заметил, что вы использовали плагин stash pullrequest. Я также использую то же самое, но он не работает. - person thinkingmonster; 14.01.2016
comment
Я посмотрю на другой вопрос :) Если мой ответ будет полезен, не забудьте проголосовать. - person Bruno Lavit; 14.01.2016