Як відключити git пейджер, але лише для певних команд?


14

git logНаприклад, мені подобається включити пейджер , але не git diffтому, що у мене є власний інструмент візуального розгляду, який з'являється, і я ненавиджу натиснути "q" в командному рядку після того, як буде зроблено diff. Чи є спосіб це зробити?


Відповіді:


23

Ви можете встановити pager.diffзмінну конфігурації для відключення пейджера для певних підкоманд. Дивіться pager.<cmd>у git-config (1) .

git config --global pager.diff false

Вийдіть, --globalякщо ви хочете лише змінити цю конфігурацію для поточного сховища.


3
Щоб відключити для конкретного виклику: git -c pager.diff=false log ....
міс

0

Не чудове рішення, але ви можете мати git обгортку, яка визначає, яку команду ви виконуєте, і передає висновок через cat, щоб усунути термінальне виявлення.

#!/bin/sh
case "$1" in)
  diff) git "$@" | cat;;
  *) exec git "$@";;
esac

Звичайно, моя прикладна програма - це повністю розум. Вам потрібно буде пропустити варіанти замість жорсткого кодування "$ 1" в програмі.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.