我正在努力确保自己不会提交使用制表符进行缩进的代码。这是一种我对自己的提交应用的软性约束(目前我们没有关于缩进字符的标准,但我想使用空格,因为对于空格的宽度没有争议,但有些人使用宽度为4的制表符而另一些人使用宽度为8的制表符)。
检查此类约束条件最简单的方法通常是每次要提交时查看git diff的实际输出,并查看是否存在任何问题。例如,对于我来说,默认情况下会突出显示尾随空格并在差异中也可见Windows换行符,因此如果我即将意外提交带有尾随空格的代码,则会收到警告。有没有办法使制表符也在git diff中显示出来呢?
color.diff.new
和color.diff.old
一样行为? - rr-core.whitespace
中设置tab-in-indent
的一个效果之一。如果您不想要特殊突出显示制表符,请从配置中删除它(默认情况下未启用,因此它将在其中一个配置文件中可见;例如git config --edit
或git config --edit --global
)。如果您想更改突出显示,请参阅color.diff.whitespace
(尽管像红色突出显示一样,它将在“旧”和“新”部分中具有相同的颜色)。 - Chris Johnsentab-in-indent
,则制表符将不会被突出显示,也不会使用color.diff.new/old
(我正在尝试将其分别设置为红色反转
和绿色反转
)。 - rr--tab-in-indent
;以及制表符前的空格使用-space-before-tab
)可能是一个错误或只是实现细节。Git 2.5.0将具有--ws-error-highlight=none
,它将完全禁用空格错误高亮,使这些制表符(和制表符前的空格)与“新”和“旧”行的其余部分颜色相同。 - Chris Johnsen