[英]Why doesn't git merge changes when two branches are different but with no new commits in either branch?
例如,
我的主分支里面有東西。 另一個叫做other_branch
分支other_branch
有東西+ more_stuff。 每個分支都沒有任何提交。
如果我簽出master然后嘗試合並other_branch,git說“已經是最新的”。 沒有任何事情發生。 為什么在這種情況下不會將more_stuff合並為master? 這是git的設計方式嗎?
注意:other_branch是從較早的master提交創建的。
這很簡單。 如果git說“已經是最新的”,這意味着分支機構沒有分歧。 如果至少有一個分支包含另一個分支沒有的提交,則兩個分支已經分歧。
我不確定你的意思是什么東西+ more_stuff在里面。 如果您已將新文件添加到other_branch(或更改現有文件),並使用“git add”和“git commit”,則other_branch歷史記錄將與主分支不同。 由於git表示沒有合並的更改,因此該分支上的歷史記錄沒有變化,即您沒有提交任何內容。
它只發生在您嘗試合並的分支已包含在當前分支中時。
所以,你提到的more_stuff
已經在master分支中了。
您可以使用gitk
檢查分支的可視樹。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.