Git diffmerge 工具的配置及問題解決

最近使用git時發現git diff 不方便,尤其是代碼改動較大的時候,需要分成很多行,通過空格翻頁對比,用戶體驗極差

網上搜了下發現有個工具 diffmerge 貌似挺好用

下載地址
http://sourcegear.com/diffmerge/downloaded.php

按照網上配置時總是報錯,解決不了,最後自己搞定了,記錄一下,已經在多個電腦測試OK,希望對大家有幫助

1、根據自己電腦下載完默認無腦安裝diffmerge即可,我在win7和win10都測試過

2、配置環境變量,將sgdm.exe的路徑C:\Program Files\SourceGear\Common\DiffMerge 添加到windows環境變量的path下
win7系統是我手動添加的,win10貌似自動添加好了。總之驗證一下

3、Git裏做些配置
複製以下代碼

git config --global diff.tool diffmerge
git config --global difftool.diffmerge.cmd 'sgdm "$LOCAL" "$REMOTE"'
git config --global merge.tool diffmerge
git config --global mergetool.diffmerge.cmd 'diffmerge --merge --result="$MERGED" "$LOCAL" "$(if test -f "$BASE"; then echo "$BASE"; else echo "$LOCAL"; fi)" "$REMOTE"'
git config --global mergetool.diffmerge.trustExitCode true
git config --global mergetool.keepBackup false

直接在Git bash裏粘貼這些代碼就行

執行完,你打開電腦裏 .gitconfig 文件,可以看到你配置好的東東

4、如果你代碼有改動,這時候你在git bash 裏輸入git difftool。多半會報錯如下
在這裏插入圖片描述

解決辦法:

[difftool "diffmerge"]
	cmd = sgdm \"$LOCAL\" \"$REMOTE\"
	
// 改爲(注意rogram\\ Files中間的兩個斜槓,很重要!否則繼續報錯,很多教程沒寫這點):
[difftool "diffmerge"]
    cmd = C:/Program\\ Files/SourceGear/Common/DiffMerge/sgdm.exe \"$LOCAL\" \"$REMOTE\"

5、解決中文亂碼問題

git difftool
在這裏插入圖片描述

點y,彈出界面,做如下選擇
在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述
退出當前界面,重新git difftool
在這裏插入圖片描述

一切OK,可以正常使用啦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章