2012-05-16 44 views
2

我合併兩個分支,但它導致這樣的最終文件:有沒有任何工具可以讓我輕鬆理解git衝突文件?

<<<<<<< HEAD 
this is line -1. 
this is line -2. 
this is line -3. 
======= 
this is line b1. 
this is line b2. 
this is line b3. 
>>>>>>> addSomePrefix 

我沒有想法什麼的代表,是他們的任何GUI工具顯示的數據更可讀的格式?謝謝。

+1

根據您的平臺,您可能需要TortoiseGit:http://code.google.com/p/tortoisegit/downloads/list我不確定它會幫助解決這個問題(我不確定您的問題問題* IS *確切 - 它看起來更像是一個合併衝突警告,而不是「配置文件」!),但它可能有助於一般...恕我直言... – paulsm4

+2

這不是一個配置文件;這看起來像是一場衝突。建議你修改這個問題? – Ashe

+0

看起來像合併衝突。 Head部分是當前代碼,'====='下面的部分是從分支addSomePrefix合併而來的代碼。 – Gohn67

回答

2

這是衝突的結果。

你應該手動編輯文件,解決衝突(基本上這意味着選擇你想要保留的代碼)。

現在===上面的代碼是舊代碼,===下面是你的新代碼(我認爲是這樣!)。

對於一般的git用法,我也推薦一個gui工具,如gitg(Linux)/ gitx(Mac)。

+0

哈哈,我也不確定!用於SmartGit的 – Gohn67

1

某些Git客戶端提供了一個「diff3」衝突解決程序工具(3個面板幫助您通過點擊幾下鼠標來解決衝突)。你可以嘗試例如SmartGit

但是,前面已經說了,解決衝突手動也是一個選項,它並不困難......

+0

+1,它使用類Meld顯示。 http://meldmerge.org/ – endolith

0

您可以使用meld作爲合併的可視化工具,它確實很好的3路合併顯示你共同的根,並允許從合併的兩側拉動變化。

有它調用當您運行git mergetool以下內容添加到您的git的配置

[merge] 
    summary = false 
    tool = "meld" 

[mergetool "meld"] 
    cmd = meld \ 
    -a \ 
    "$PWD/$BASE" \ 
    "$PWD/$LOCAL" \ 
    "$PWD/$REMOTE" \ 
    -o "$PWD/$MERGED" 
    keepBackup = false 
    trustExitCode = false 
0

您可能會檢查ECMerge(我工作的工具),它加載其「打開衝突文件」混帳衝突文件菜單或其外殼擴展名,並顯示它們以便讓您解決衝突。順便說一下,它適用於大多數其他VCS(如Bazaar,Darcs,CVS,SVN等)。

ECMerge與git集成在一起,它有一個預先註冊的工具,它可以在配置爲使用git命令行時瀏覽Git存儲庫(本地和裸回收)。

相關問題