合併衝突的方式改爲diff3
當遇到衝突時,可以直接根據衝突文件中衝突的兩塊代碼對比着改正確了,但用哪個更合理,如何去判斷,如果有一個它們共同的祖先節點的代碼來對比,合併起來有所參考會舒服些,即衝突文件中有三塊代碼,顯示當前,遠程,和兩者最近的祖先,三者對比來選擇用哪一部分,怎麼配置呢?如下:
// 設置 merge.conflictstyle 選項爲 diff3 作爲以後合併衝突的默認選項
git config --global merge.conflictstyle diff3
配置KDiff3作爲merge tool和diff tool
設置diff3以後,還是要手動打開文件修改或者命令行修改,還是不夠直觀,如果有一個可視化UI合併衝突的工具,就更舒服了。
這裏推薦KDiff3,KDiff3是一個用來對文件或目錄進行比較合併的工具,在比較時它可以同時針對兩個或三個文件目錄而進行。通過比較,它將文件目錄的差異按行加以顯示。同時,KDiff3提供有自動化的合併工具,方便使用者進行有關合並的操作,配置方式如下:
- 首先下載安裝KDiff3插件 [官網下載傳送門]
- 然後輸入命令:
git config --global --add mergetool kdiff3
git config --global --add mergetool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe"
git config --global --add mergetool.kdiff3.trustExitCode false
git config --global --add difftool kdiff3
git config --global --add difftool.kdiff3.path "C:/Program Files/KDiff3/kdiff3.exe"
git config --global --add difftool.kdiff3.trustExitCode false
- 最後設置merge tool和diff tool爲kdiff3
git config --global merge.tool kdiff3
git config --global diff.tool kdiff3
大功告成,之後每當發生衝突時,輸入以下命令即可啓動kdiff3插件:
git mergetool