預設 git diff 輸出純文字,難以閱讀大幅變更。設定外部視覺化比較工具(如 Meld、KDiff3、Vimdiff)可大幅提升代碼審查效率。
[diff]
tool = meld
external = gitdiff.sh # 可選:自訂包裝腳本
[difftool]
prompt = false # 不提示直接啟動
[merge]
tool = meld
[mergetool]
prompt = false
# Debian/Ubuntu
sudo apt install meld
# Fedora/RHEL
sudo dnf install meld
# Arch
sudo pacman -S meld
git difftool:逐檔啟動 Meld 比較工作區與索引。git difftool HEAD:比較工作區與最後提交。git difftool branch1 branch2:比較兩分支。git mergetool:衝突解決介面。#!/bin/sh
# 將 git 傳入的 7 參數轉為 Meld 可用格式
# $1=old file, $2=new file, $5=old name, $6=new name
meld "$1" "$2" --label="OLD: $5" --label="NEW: $6"
存放於 $PATH 目錄(如 ~/bin)並 chmod +x。
git config --global diff.tool vimdiff,終端機原生、鍵盤導向。sudo apt install kdiff3,三方合併介面清晰。