Як мені змусити git пейджер очистити вихідний екран після виходу?


30

Пейджер менше не очищає екран, як це слід робити, коли я використовую git.

Я використовую менше весь час, і він зазвичай не залишає вихід у терміналі після виходу, але коли менше виконується через git, він залишає вихід у терміналі. Я на 100% впевнений, що git використовує менше в моїй системі.

Що не так з git і як це виправити? pager = lessв ~ / .gitconfig не допомагає. $ PAGER також встановлено менше.


Для уточнення, git не очищає екран за замовчуванням , з вашим git немає нічого поганого. Використовуйте відповідь @ ggustafsson, щоб змінити поведінку за замовчуванням.
LeartS

Відповіді:


32

Рішення полягає у встановленні змінної ЛІШЕ. Git за замовчуванням до less FRSX.

export LESS=R

Крім того, ви можете змінити змінну LESS, коли викликається пейджер:

git config --global core.pager 'less -+$LESS -R'

Дивіться розділ core.pager в man git-config


3
Достатньо видалити лише параметр X, він запобігає відновленню терміналу відповідно до посібника менше (1).
xuchunyang

11

Щоб очистити екран, але залишити інші форми поведінки недоторканими, ви можете зробити це

git config --global core.pager 'less -+X'

Це вимикає -Xваріант для меншої.


1
Ви також хочете відключити прапор 'F', оскільки менше автоматично закриється, якщо буфер невеликий, що призведе до того, що ви повірите, що немає виводу. Отже команда повинна бути git config --global core.pager 'less -+X -+F'.
Стів
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.