분기 (master <-newBranch)를 Jenkinsfile (풀 요청 트리거)과 충돌없이 병합하려고합니다.
Jenkins가 실행을 마치면 3 단계에서 "치명적 : 중단 할 병합이 없습니다 (MERGE_HEAD 누락)"오류 메시지가 표시됩니다.
손으로 공연하려고하면 성공합니다.
문제는 단계가 분리되어 있다는 것입니다. 내가 무엇을 할 수 있을지?
고마워, Marcel
내 젠킨스 파일 :
pipeline { agent none
stages {
// Step 1
stage("Step1") {
agent {label "master"}
steps{
script{
// Pull code
sh (script: "cd /var/www/myProject && git checkout master && git checkout . && git pull", returnStdout: true)
// Merge with newBranch
def mergeReturn = sh (script: "git merge origin/develop --no-commit 2>&1", returnStdout: true).trim()
println("mergeReturn: " + mergeReturn)
// When conflict
if (mergeReturn.contains("Automatic merge went well")) {
error("conflict exists")
}
}
}
}
stage("step2"){
agent {label "master"}
steps{
script{
//Run something on merged code
}
}
stage("Step3") {
agent {label "master"}
steps{
script{
// Abort merge - (Return to master)
sh (script: "git merge --abort", returnStdout: true)
}
}
}
}}