Мне нравится, например, включение пейджера для git log
, но не git diff
потому что у меня есть собственный инструмент визуального сравнения, и я ненавижу нажимать q в командной строке после завершения diff. Есть ли способ сделать это?
11
2 ответа
19
Вы можете установить переменную конфигурации pager.diff
чтобы отключить пейджер для определенных подкоманд. Смотрите pager.<cmd>
в git-config(1).
git config --global pager.diff false
Оставьте --global
если вы хотите внести изменения в конфигурацию только для текущего репозитория.
0
Не очень хорошее решение, но у вас может быть оболочка git, которая определяет, какую команду вы запускаете, и направляет вывод через cat для устранения обнаружения терминала.
#!/bin/sh
case "$1" in)
diff) git "$@" | cat;;
*) exec git "$@";;
esac
Конечно, мой пример программы полностью мозговой. Вам нужно было бы пропустить опции вместо жесткого кодирования "$ 1" в программе.