git difftool
可以指定外边的diff工具来显示文件差异,可以使用 git difftool –tool-help 查看difftool可用的工具
如果不指定默认的difftool工具,需要使用–extcmd 参数指定具体的diff工具,比如:
git difftool --extcmd vimdiff cache/pris.c
git difftool --extcmd icdiff cache/pris.c
设置difftool 默认使用vimdiff
git config --global diff.tool vimdiff
git config --global difftool.prompt false
新建一个别名,后续可以使用git d 代替git difftool
git config --global alias.d difftool
运行git difftool
如果不加具体的文件,默认的是一个一个的比对文件,使用:qa退出单个文件,如果想使用:cq退出整个比对,需要增加如下参数
git config --global difftool.trustExitCode true
最终~/.gitconfig 配置文件
[alias]
d = difftool
[diff]
tool = vimdiff
[difftool]
prompt = false
trustExitCode = true
总结
此时git diff 一样可以使用,它使用的还是默认的格式, git d 和git difftool 使用的是vimdiff格式显示。
此时git d ,git difftool 和git diff 用法一致,可以使用git d –stage 比对working和staged暂存区 使用git d HEAD 比对working和当前版本库的差异。
其他diff工具
icdiff
可以使用 pip install git+https://github.com/jeffkaufman/icdiff.git
安装
具体见官方站点