2017-02-22 18 views
1

내가 두 가지가 있습니다 mastermasterfeature충돌 할 때 Git 커밋 이름 지정. 맞습니까?

내가 19 버전을 변경하고 feature에 내가 9 버전을 변경을 (예, 이것은 이전 분기)입니다. 그래서 그것을 새로 고칠 :

git checkout feature 
git rebase master 

내가 얻을 충돌 :

git diff -b -w --ignore-blank-lines lib/XXX/Schema.pm 
diff --cc lib/XXX/Schema.pm 
index 0922bb2,344f0e1..0000000 
--- a/lib/XXX/Schema.pm 
+++ b/lib/XXX/Schema.pm 
@@@ -1,6 -1,6 +1,12 @@@ 
    package XXX::Schema; 

++<<<<<<< ours 
+our $VERSION = 19; 
++||||||| base 
++our $VERSION = 8; 
++======= 
+ our $VERSION = 9; 
++>>>>>>> theirs 


    use strict; 

내가 feature 내가 OURS로 계산 지점 및 THEIRSmaster 분기에 변화를 생각 때문에의. 권리?

>>>>>> theirs이 병합 충돌로 표시되는 이유는 무엇입니까?

+0

왜 "ours"와 "theirs"가 그들이하는 지점을 가리키는 데 사용되는지 또는 왜 'VERSION'의 가치 차이가 충돌로 간주되는 지 묻습니다. – chepner

+0

@chepner'왜 우리 "와"그들의 것 "은 그들이하는 가지를 가리키는 데 사용됩니다. 나는 9 월에 지점에 소개 되었기 때문에'>>>>>>> ours'가 있어야한다고 생각합니다. 현재 –

답변

4

이것은 어떻게 rebase의 작동 불능입니다. 리베이스 한 커밋 (예 : master)으로 리셋 한 다음 feature 분기에서 커밋을 선택합니다. 따라서 리베이스 된 변경 사항 (feature 브랜치)은 이고 master 브랜치의 변경 사항은 ours입니다.

+0

감사합니다. 나는이 과정을'feature'에서'feature'까지 커밋을 적용하는 것으로 생각했습니다. –