2015-05-08 77 views
0

有一個分支A.我從支路A支所以我有一個分支B.我從支路B支所以我有一個分支C.GIT中合併2個分支

在而文件file1.js改變在A中,file1.js(不是file2.js,但是相同的file1.js)在B中和file3.js中的C中。 然後B被合併到A中,由於file1.js解決衝突。

如果我在將B合併到A後將C合併到A中,我會得到任何衝突嗎? 我希望答案是否定的,但是我仍然很好奇,如果我必須在將C合併到A時以任何方式解決file1.js衝突,或者如果我期望通過合併獲得任何困難。

謝謝。

+1

我認爲你不會有任何衝突......: – SonOfSun

+1

如果在從分支B創建分支C之前在分支B中更改了'file1.js',那麼可能會有衝突。這與您嘗試將分支B合併到A時的情況完全相同。如果在創建分支C後更改了分支B中的'file1.js',則不會有衝突。 – newmediafreak

回答

2

不會有衝突。合併操作只是向兩個父母添加新的提交(除非你在分支上沒有任何提交,否則git會快進)。在你的情況下,分支B的提交已經在A上合併了,git會意識到這一點。 爲了可視化該過程,我建議您在Learn Git Branching網頁上嘗試您的問題。 需要執行的命令列表:

git checkout -b A 
git checkout -b B 
git commit 
git checkout -b C 
git commit 
git checkout A 
git commit 
git merge B 
git merge C