2012-02-05 50 views
1

我只是跑git merge otherBranch並輸出這個錯誤的命令行:git:「致命:執行內部合併失敗」是什麼意思?

fatal: Failed to execute internal merge 

這到底意味着什麼?我會提供更多細節,但我不確定哪些細節很重要。其他人是否經歷過這種情況,如果是這樣的話,是什麼導致了你的情況?

編輯:

它看起來像這是一個萬能的錯誤消息。但是,如果其他人找到了失敗的具體原因,並認爲其他人可能從您找到的解決方案中受益,請隨時發佈這些解決方案。

回答

2

git源:

 merge_status = merge_3way(o, &result_buf, one, a, b, 
         branch1, branch2); 

     if ((merge_status < 0) || !result_buf.ptr) 
      die("Failed to execute internal merge"); 

merge_3way是(意料之中)執行三路合併功能。因此,任何時候合併返回錯誤都會打印「無法執行內部合併」消息。

您幾乎可以肯定有另一個錯誤消息超過您發佈的錯誤消息,這是真正的原因。

+0

謝謝。我也很好奇,如果這裏的失敗是1)回滾之前完成的所有成功的合併2)在工作目錄中保留在失敗之前合併的任何更改或3)在失敗之前/之後完成所有更改並將它們保留在工作目錄中。 – 2012-02-05 05:25:16

+0

@ Thr4wn由於您似乎有可以測試的情況,歡迎您嘗試。無論三者中的哪一個,由於您的存儲庫完好無損,而且您可能正在使用'rerere',因此您不會遇到任何問題。 – Borealid 2012-02-05 05:29:36

+1

對於未來的谷歌瀏覽器:當我得到這個錯誤時,git只是簡單地放棄中間打印,並將索引和工作目錄保留在失敗的時刻。 – 2012-02-05 06:30:02

相關問題