如何使用git diff显示空间和选项卡

如何使用git diff显示空间和选项卡,git,git-diff,Git,Git Diff,我有以下git-diff的输出 - // sort list based on value + // sort list based on value 我怎样才能在行尾轻松查看已删除的制表符/空格的数量?我可以想到多个选项: 将Git配置为使用颜色:Git config--global color.ui true。行尾的空白现在以红色突出显示 将git diff的输出通过cat:git diff|cat-A。-A标志告诉cat显示不可打印的字符(例如选项卡的^I) 注:Git 2.5

我有以下git-diff的输出

- // sort list based on value    
+ // sort list based on value

我怎样才能在行尾轻松查看已删除的制表符/空格的数量?

我可以想到多个选项:

  • 将Git配置为使用颜色:
    Git config--global color.ui true
    。行尾的空白现在以红色突出显示

  • git diff
    的输出通过
    cat
    git diff|cat-A
    -A
    标志告诉
    cat
    显示不可打印的字符(例如选项卡的
    ^I

注:Git 2.5+(2015年第二季度)将提出一个更具体的空白检测选项

参见,和[2015年5月26日]by.
(于2015年6月11日被合并)

diff.c
--ws-error highlight=
选项 传统上,我们只关心引入的空格分隔符 以新行显示。
有些人想在旧电脑上画空白 还有台词。当他们在新行上看到空格破损时,他们 可以在相应的屏幕上发现相同类型的空格破损 老台词,想说“啊,那些破碎在那里,但它们 都是从原始版本继承的,所以现在我们不要碰它们。”

引入允许它们通过的
--ws-error-highlight=
选项 以逗号分隔的
上下文
列表,用于指定 要突出显示空白错误的行

委员会:

git-diff/log--ws-error-highlight=
缺少相应的配置变量来默认设置它。这是在Git2.11中添加的

参见(2016年10月4日)作者。

(由in合并,2016年10月26日)

我宁愿告诉git使用
.gitconfig
选项
[alias]df=diff--忽略eol处的空格-b-w--忽略空行
。这不是一个答案,但可能是一个解决办法…@coin没有帮助,它完全消除了空格和制表符,并且在diff中不再可见:-(
git diff--ws error highlight=all
也很有用(使用git 2.5+,2015年第2季度)。请看,cat可以工作,但我更喜欢只使用git的配置解决方案。将ui.config设置为true不会改变我的输出。我发现
git config color.diff.whitespace“blue reverse”
适用于空格,但不适用于选项卡(没有
color.diff.tabs
config)@Nico:woops,这是指OSX(BSD?)上的
color.ui
,而不是
ui.config
:)。选项是-v,用于显示非打印字符,-e在每行末尾显示一个美元符号。我想你希望mac电脑使用
-t
,而不是
-v
。这会将选项卡显示为
^I
语法
git config diff.wserror突出显示所有
是否也适用于2.11?@GrantHumphries我刚刚测试过它:是的(git版本2.11.0.windows.1)
--ws-error-highlight=<kind>
git config diff.wsErrorHighlight [old,new,context]