[technique] git et le pager

Par défaut les commandes git rendent leur résultat dans un pager, less par défaut.

C’est pratique pour les commandes comme « git log » sans limites. Mais pour permettre de voir un historique limité qui rende la main sur le terminal, il faut spécifier « –no-pager » qui est une option de git pas de git log :

git --no-pager log --oneline -n 8

Attention pour créer un alias git qui ajoute cette option il faut spécifier la commande complète via ! :

lnp = !git --no-pager log --oneline -n 8

Voir plus : https://git-scm.com/book/en/v2/Customizing-Git-Git-Configuration

Share

A propos Fridolin Somers

Ingénieur diplômé en 2003 de l’INSA de Lyon en mécanique, j’ai changé pour le développement informatique en 2006. D’abord consultant en Java à Paris et Lyon, j’ai découvert le développement web et Koha en 2010 chez BibLibre. Je suis au support et administration système ainsi que membre assidu de la communauté Koha.

5 Commentaires

  1. À noter que, par défaut, git utilise les options -FRX de less. -F dit à less de se terminer automatiquement si la sortie peut être affichée sur un seul écran.
    Donc –no-pager n’est normalement pas utile dans cette config (à part si ton terminal fait moins de 8 lignes de haut).
    Mais sur nos serveurs, la variable d’environnement LESS est définie à « -R », ce qui empêche git d’utiliser ces options par défaut.

    Donc plutôt que d’utiliser des alias pour toutes les commandes git qui utilisent un pager, unset LESS ou export LESS=-FRX

    Autres options: https://git-scm.com/docs/git-config#git-config-corepager

  2. lnp = !git –no-pager log –oneline -n 8

    Ah non en fait je déconseille car cela ne permet pas d’avoir plus d’arguments. Par exemple spécifier un fichiers :
    git lnp file.pl

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *