1. ホーム
  2. git

[解決済み] git show / git diff でタブ幅を 4 に設定する

2023-07-15 09:08:08

質問

職場では複数の開発者がいて、コードスタイルガイドを持っていません。ある開発者はタブでインデントし、他の開発者は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";
+}

問題は git diff または git show のように、それぞれのタブが8つのスペースと同じ幅で表示されます。(まあ、実際にはタブとして表示され、シェル(私の場合はbash)はタブを8つのスペースとして表示しているのですが。これを変更するためのbashの設定があるのでしょうが、gitにタブを4スペースとして出力するオプションがあるかどうか知りたいのです。 diff / show というように、開発者によっては zsh の代わりに bash .

何かアイデアはありますか?

どのように解決するのですか?

私は git config --global core.pager 'less -x1,5'

参考文献