Comment puis-je obtenir le pager git pour nettoyer la sortie d'écran après la sortie?

30

Le pager less n'efface pas l'écran comme il devrait le faire lorsque j'utilise git.

J'utilise moins tout le temps et il ne laisse généralement pas de sortie dans le terminal après avoir quitté mais quand moins est exécuté via git, il laisse la sortie dans le terminal. Je suis sûr à 100% que git utilise moins sur mon système.

Quel est le problème avec git et comment puis-je le corriger? pager = lessdans ~ / .gitconfig n'aide pas. $ PAGER est également réglé sur moins.

ggustafsson
la source
Pour clarifier, git n'efface pas l'écran par défaut , il n'y a rien de mal avec votre git. Utilisez la réponse de @ ggustafsson pour changer le comportement par défaut.
LeartS

Réponses:

32

La solution consiste à définir la variable MOINS. Par défaut, Git est less FRSX.

export LESS=R

Alternativement, vous pouvez modifier la variable MOINS lorsque le pager est appelé:

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

Voir la section core.pager dans man git-config

ggustafsson
la source
3
Supprimer uniquement l'option X est suffisant, l'option est d'empêcher la restauration du terminal selon le manuel de less (1).
xuchunyang
11

Pour effacer l'écran, mais laisser les autres comportements inchangés, vous pouvez le faire

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

Cela désactive l' -Xoption pour moins.

Dan
la source
1
Vous voudrez également désactiver le drapeau «F», car moins se fermera automatiquement si le tampon est petit, ce qui vous fait croire qu'il n'y a pas de sortie. La commande devrait donc l'être git config --global core.pager 'less -+X -+F'.
Steve