Ответ 1
Я верю git config --global core.pager 'less -x1,5'
Ссылка: git -scm chp7-1
На работе у нас есть несколько разработчиков и у нас нет руководства по стилю кода, а некоторые отступы разработчиков с вкладками и некоторые другие с 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 config, но я хотел бы знать, имеет ли возможность git выводить вкладки в виде 4 пробелов в diff
/show
, поскольку некоторые разработчики работают с zsh
вместо bash
.
Любые идеи?
Я верю git config --global core.pager 'less -x1,5'
Ссылка: git -scm chp7-1
Поскольку ответ fooobar.com/info/108250/... не работал у меня из-за моих настроек цвета, я придумал следующее решение:
TAB=$'\t' && git config --global core.pager "sed 's/$TAB/ /g' | less" && unset TAB
Это заменяет все символы табуляции на 4 пробела, прежде чем отображать их с меньшим количеством. (Обходной путь TAB необходим, чтобы обойти обратную косую черту оболочки)