2017-07-13 42 views
1

幾乎它對標題所說的內容。儘管在提交的提交中有新文件。這會阻止FF發生嗎?即使沒有文件衝突,Git pull也不會快進合併

注意:Git pull doesn’t fast-forward merge, even though there are no conflicts可能看起來像是重複的,但接受的答案會談到一旦合併因未保存提交消息而中斷時如何提交。

+0

那麼_does_它呢?有錯誤嗎?它是否說它爲什麼不快速前進?你打什麼具體? – Useless

+0

它與合併提交進行合併。它用默認的消息打開vim,我保存了它並且git提交了合併。 – Akilan

+0

哦,所以你甚至沒有告訴它' - 只 - '?我認爲你有理由期望它是一個快速發展的理由。 – Useless

回答

2

當兩個分支之間沒有發散提交時,Git只執行快進合併。這意味着當前分支是您正在合併的分支的祖先。

如果發散提交,那麼是否存在衝突並不重要。 Git仍然需要將合併存儲爲新的提交。

git docs

[...]當您嘗試合併一個帶有提交提交即可以按照第一次提交的歷史可以達到,Git會向前移動指針,因爲簡化的東西有是沒有分歧的工作合併在一起 - 這就是所謂的「快進」。

+0

你的意思是說只有在我沒有提交任何東西的情況下,FF纔會發生? – Akilan

+1

@Akilan正是如此。如果當前分支中沒有其他分支中不存在的提交,則會發生FF。 – GolfWolf