Git在merge或rebase合併兩個分支時,若發生衝突,除了編輯衝突的內容外,有時會想直接用當前分支或合併分支的全部異動。
Merge
例如在a分支 merge b分支,也就是在a分支時輸入git merge b
後,發生衝突的檔案為pom.xml
,則在解衝突階段輸入git checkout --ours pom.xml
,則是以所在分支a分支的檔案覆蓋掉b分支的檔案。--theirs
則為相反。
Rebase
相反地,在a分支 rebase b分支,也就是在a分支時輸入git rebase b
後,發生衝突的檔案為pom.xml
,則在解衝突階段輸入git checkout --ours pom.xml
,則是以分支b的檔案覆蓋掉所在分支a分支的檔案。--theirs
則為相反。
沒有留言:
張貼留言