2017-02-14 1 views
0

gerrit CI를 사용하고 있습니다. 각 커밋 메시지에 Change-ID를 추가하는 commit-msg 훅이 필요합니다.git commit-msg hook 재귀 적 merge 발생시 트리거하지 않음

이런
767deb5 [email protected]{0}: pull: Merge made by the 'recursive' strategy. 

, 우리는 우리의 리트 서버에 밀어, 다음과 같은 메시지를받을 수 없습니다 : 우리가 재귀 병합을 얻을 당길 때

그러나 때로는이이 같은 reflog에 표시 :

! [remote rejected] HEAD -> refs/for/master ([767deb5] missing Change-Id in commit message footer) 

마지막 커밋을 수정하면 쉽게 해결됩니다. 그러나 이것은 지루하고 짜증 스럽습니다.

이 문제를 어떻게 피할 수 있습니까? 재귀 병합 전략이 커밋 - msg 훅을 트리거하지 않는 이유는 무엇입니까? 어떻게 자동으로 후크를 트리거 할 수 있습니까?

답변

1

이 문제는 재귀 적 병합 전략과 관련이 없습니다 (단지 우연한 일치라고 생각합니다). 재귀 병합 전략에 대해 자세히 알고 싶다면 this very good text about it을 살펴보십시오.

병합 커밋 에 Git 커밋 - msg 훅이 실행되지 않아서 충돌이 발생하지 않았기 때문에 문제가 발생했습니다.. 이것에 대한 매우 좋은 해결 방법은 https://stackoverflow.com/a/24692818/4653675

+0

입니다. 해결 방법이 완벽합니다. 나는 당신이 후손을 위해 여기에 내용을 인용하면 당신의 대답을 받아 들일 것입니다. :) –