2010-09-23 72 views
1

如果基文件和源文件具有相同的文件內容,並且目標分支/回購文件有其他文件更改,它保留了哪些內容,源文件或目標文件?Git合併 - 瑣碎的合併?

爲了詳細解釋

 A 
     | 
     B 
    /\ 
    C D 

假設在A-> B邊緣的溶液中加入一個文件,然後在B->下再次除去,同時將其單獨留在B-> d邊緣。
我們要合併C和D.

如果共同的祖先是一家沒有變化(所以A,C沒有文件& B,d有文件)合併時,C和D.

如果C(目標)從D合併會發生什麼?

如果D(目的地)從C合併會發生什麼?

+0

對不起,我認爲我沒有按照預期解釋我的問題,我的不好......已經重新編寫了它..想...我對此有一些懷疑,希望你能幫我澄清。 – 2010-09-27 18:04:06

+0

共同的祖先是B.但即使它是A,兩個流(A-B-C和A-B-D)都具有相同的新文件插入,所以沒有問題。你必須記住,git跟蹤變化,而不是前後條件。 – 2010-09-27 23:15:06

回答

5

合併是對稱的(除了合併結束於一個分支或另一個分支的事實)。它將應用來自雙方的變更,並報告在過程中遇到的任何衝突變更。在這種情況下,由於只有一方發生了變化,最終結果看起來與具有變化的一方相同。

順便說一下,你可以很安全地嘗試這些操作,看看他們會做什麼;如果事情變成梨形,只需undo。不過,請務必注意鏈接文章底部的注意事項。

+0

謝謝:),但我的壞我沒有口頭表達我的問題,因爲意圖....已添加更多的我的問題。 – 2010-09-27 18:09:39

+0

我的答案依然存在。看到我對你修改後的問題的評論。 – 2010-09-27 23:15:46

+0

+1但是,「撤消」文章的鏈接已損壞 - 您有替代方法嗎? – 5arx 2013-01-17 09:54:53