icdiff 好用的檔案比對工具,Terminal 環境下用它就對了
前言:
在 Terminal 環https://境下,兩個檔案要進行差異比對,通常我們會使用系統內建的 diff
指令,效果如下:
diff
指令僅僅是將檔案差異處以上下對照呈現,並不會以顏色標示差異處,需要我們自己很傷眼的來回掃描比對才知道差異在哪裡,這樣的呈現效果不是那麼清楚。
讓我們來試試看,如果將檔案差異處以左右對照呈現的方式,並且將差異處標記上顏色,那是不是更一目了然了呢!
漂亮!差異處有加上顏色果然清楚多了!要達到這樣的效果,只需要改用 icdiff
這一套工具即可。
來看看 icdiff
官方是怎麼介紹的:
improved colored diff
效果如同我們上面所看到的,在檔案差異處會用顏色標記,一目了然的比對兩者的差異,找起問題容易多了。
其中各種顏色代表的意義如下:
- 「綠色」表示「新增」。
- 「紅色」表示「刪除」。
安裝方法:
OS X 可以直接使用 Homebrew
來安裝:
$brew install icdiff
由於 icdiff
是一個 python 開發的程式,也可以直接下載檔案來執行,請參考 GitHub 上面的說明。
使用方法:
如何比較兩個檔案差異:
$icdiff <file_1> <file_2>
備註:我們也可以將內建的 diff 指令改用 icdiff 取代。
如何搭配 git 使用:
$git difftool --extcmd icdiff
也可以有更精簡的 git 用法:
$git icdiff
只需要設定 git difftool path
指向 git-icdiff
檔案即可。
將 icdiff
設定為 git 預設比對差異工具:
已經習慣 git 預設的 git diff
指令了嗎?別擔心,我們可以設定 git 預設使用這一套來做差異比對,讓我們可以沿用原本熟悉的 git diff
指令,同時享用 icdiff
清楚的比對結果:
$git diff
該如何讓 $git diff
預設使用 icdiff
,設定方法如下:
在
.gitconfig
設定[diff] # 使用 icdiff 來取代 git 內建的 diff external = ~/bin/git-diff-wrapper.sh
建立
mkdir ~/bin/
目錄建立
~/bin/git-diff-wrapper.sh
檔案,加入以下內容:#!/bin/bash icdiff $2 $5
chmod 777 ~/bin/git-diff-wrapper.sh
開啟執行權限完成!趕緊來使用
$git diff
看看吧
參考資料:
Bobo內心旁白:「為了愛護您的靈魂之窗,請趕緊改用 icdiff
來比對檔案差異吧。」