如何使git diff –ignore-space改变默认值

我可以设置一个别名,但似乎我应该能够将其设置为configuration文件中的一个选项,只是我没有看到反正这样做。

当我做差异化时,我只想要--ignore-space-change ,而不是当我正在进行应用或其他任何事情时。 我试图让差异更容易理解,而不是与外部的+/-线,它们没有真正的变化混乱。

根据Git Config手册,没有这个选项。 你唯一的select是做一个别名。

http://git-scm.com/docs/git-config

如果您使用的是shell可用的操作系统,则可以使用git别名bash别名

  1. git别名 :运行这个命令来添加别名:

    git config --global alias.dfw 'diff --ignore-space-change'

    --ignore-space-change can be abbreviated to -w
    使用: git dfw来应用别名

  2. 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将显示的副本,有两个区别:

  1. colordiff中的—行与git diff中的同一行的颜色不同(非常小的问题)
  2. 每个文件一次显示一个(恼人的问题 – 任何人都知道一个修复?)

这里是我的/ 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从酿造获得)