在工作中,我们是几个开发人员,并没有代码样式指南,一些开发人员缩进标签,而另一些开发人员有4个空格(幸运的是没有人使用不同于4个空格的空格缩进).一般来说这不是(大)问题,因为在我们的编辑器中我们设置tabwidth=4并且所有缩进看起来都是正确的.
但是,git diff或者git show出现的是:
diff --git a/mesclatabs.php b/mesclatabs.php
new file mode 100644
index 0000000..1986c91
--- /dev/null
+++ b/mesclatabs.php
@@ -0,0 +1,5 @@
+<?php
+function foo() {
+ echo "line with 1 tab\n";
+ echo "line with 4 spaces\n";
+}
Run Code Online (Sandbox Code Playgroud)
问题是git diff或者git show每个选项卡显示为8个空格(实际上显示为选项卡,而shell(在我的情况下是bash)将选项卡显示为8个空格.我想必须有一些bash配置要更改这个,但我想知道git是否有选项将选项卡输出为diff/中的4个空格show,因为有些开发人员使用zsh而不是bash.
有任何想法吗?
我在这里使用解决方案来更改git diff输出中的选项卡大小.这很好用git diff.
我在.gitconfig中有这些设置:
[core]
whitespace = tabsize=4,indent-with-non-tab
pager = less -FSRX -x4
Run Code Online (Sandbox Code Playgroud)
但这些设置似乎并没有影响git add -p.如何在git add -p命令中为帅哥设置标签大小?