如何使git diff –ignore-space改变默认值
我可以设置一个别名,但似乎我应该能够将其设置为configuration文件中的一个选项,只是我没有看到反正这样做。
当我做差异化时,我只想要--ignore-space-change
,而不是当我正在进行应用或其他任何事情时。 我试图让差异更容易理解,而不是与外部的+/-线,它们没有真正的变化混乱。
根据Git Config手册,没有这个选项。 你唯一的select是做一个别名。
如果您使用的是shell可用的操作系统,则可以使用git别名或bash别名 。
-
git别名 :运行这个命令来添加别名:
git config --global alias.dfw 'diff --ignore-space-change'
--ignore-space-change can be abbreviated to -w
使用:git dfw
来应用别名 -
bash别名 :运行这个命令添加bash别名:
echo "alias gitdfw='git diff --ignore-space-change'">>~/.profile
打开一个新的terminal,你可以直接运行
gitdfw
来达到同样的效果。
我同意Dogbert的回答 ,最好是使用别名,但另一种select是将configuration选项diff.external
设置为一个用-b
调用diff
的包装脚本。
编辑:我是一个傻瓜,没有通过你的请求通读
从man git-config
实现类似的方法:
apply.whitespace Tells git apply how to handle whitespaces, in the same way as the --whitespace option. See git-apply(1).
所以打开~/.gitconfig
或./.git/config/
并追加
[apply] whitespace = nowarn
它也许不会让你犯一些只能改变空格的东西,但是我相信你可以用一些标志来否决它。
如果这可以通过一个选项,这将是非常好的。 但一个别名工作得很好。 这里是我的.gitconfig的相关行:
[diff] tool = mydiff [difftool "mydiff"] cmd = "colordiff -NuBbwi \"$LOCAL\" \"$REMOTE\" | less -R" [difftool] prompt = false [alias] dt = difftool
这个假定使用colordiff,我推荐给你几乎精确的git diff将显示的副本,有两个区别:
- colordiff中的—行与git diff中的同一行的颜色不同(非常小的问题)
- 每个文件一次显示一个(恼人的问题 – 任何人都知道一个修复?)
这里是我的/ etc / colordiffrc:
plain=off newtext=green oldtext=red diffstuff=cyan cvsstuff=red
Mac OS X 10.9.2,git 1.8.5.2(Apple Git-48)
(colordiff从酿造获得)