目前實驗結果爲:git
假設有master和branch1,用master合併branch1時(在master分支中執行git merge branch1):it
一、在同一個地方,master作了修改,branch1沒有修改,則合併後是修改了的ast
二、在同一個地方,master沒有修改,branch1修改了,則合併和仍是修改了的文件
也就是說,在同一個地方,一個分支作了修改,另外一個分支沒有作修改,則合併後的結果老是修改了的文件系統
三、在同一個地方,兩條分支都作了修改,則產生衝突。注意的是,這裏說的同一個地方,並不必定是絕對如出一轍的地方,而是在一個很小的範圍內,都算同一個地方,好比:block
master修改了第一行,而branch1修改的是第二行,這也算是同一個地方,git會認爲這是在同一個地方兩個分支都作了修改,於是會產生衝突。這個應該是跟文件系統的block相關了,猜想是同一個block都算是同一個地方。系統
記錄目前的實驗結果,後續補充分支