Pour obtenir un format véritablement tabulaire, vous devez également tronquer les noms d'utilisateur qui dépassent par exemple 20 caractères :
git log --pretty=format:'%h %<(20,trunc)%an %s' -10
En outre, si vous envoyez des données au terminal, vous pouvez éviter les débordements de ligne en tronquant le champ du message de validation :
git log --pretty=format:'%h %<(20,trunc)%an %<(39,trunc)%s' -10
ou en enveloppant les lignes et en indentant les lignes qui débordent pour les aligner :
git log --pretty=format:'%w(79, 0, 29)%h %<(20,trunc)%an %s' -10
EDIT : L'exemple ci-dessus codifie en dur la largeur du terminal à 79 caractères. Sur les systèmes POSIX, vous pouvez utiliser tput cols
pour obtenir la largeur :
git log --pretty=format:'%w(`tput cols`, 0, 29)%h %<(20,trunc)%an %s' -10
ou
git log --pretty=format:'%w($((`tput cols`-1)), 0, 29)%h %<(20,trunc)%an %s' -10
Malheureusement, ces deux dernières ruptures git alias
il faudra donc un alias de terminal (à moins que vous n'aimiez vraiment taper au clavier).
0 votes
S'il existe un utilitaire Unix pour faire cela, j'aimerais bien le connaître ! La meilleure chose à laquelle je puisse penser est une sortie formatée en Perl, ce qui est pénible.
3 votes
@Zack : la colonne d'homme est ton ami.
0 votes
Il semble que ce soit un BSDisme, malheureusement.
0 votes
Il se trouve dans le paquet util-linux.