Comment faire pour émuler la commande git log --décorer de différentes couleurs pour la branche de type
-
12-12-2019 - |
Question
En faisant mon préféré git log, j'ai créé cet alias:
graph = log --pretty=format:'%Cgreen%ad%Creset %C(yellow)%h%Creset%C(yellow)%d%Creset %s %C(cyan)[%an]%Creset %Cgreen(%ar)%Creset' --date=short --graph
Cela crée une sortie comme:
Ce que je suis absent ici est la différence de coloration de la direction générale des types comme dans log --oneline --decorate --graph
.
L' --décorer (qui utilise =court par défaut) donne les différentes reconnu branches d'une couleur différente.La direction générale des types de (HEAD, origin/master, origin/HEAD, master)
sont de couleur cyan, rouge, rouge, vert.Mine cependant sont incolores;de couleur uniquement avec le jaune de l'ensemble des branches de la partie.
Est-il un moyen de donner des couleurs différentes pour les différents genre des branches avec un alias?
La solution
Par https://stackoverflow.com/a/16844346/55948
Comme de git 1.8.3 (24 Mai 2013), vous pouvez utiliser
%C(auto)
pour décorer%d
dans la chaîne de format degit log
.À partir de la libération notes:
* "git log --format" specifier learned %C(auto) token that tells Git to use color when interpolating %d (decoration), %h (short commit object name), etc. for terminal output.)
Autres conseils
Je ne crois pas que cela soit possible.En regardant à travers la git log(1) page de man, le seul format pertinent pour --pretty
semble être %d
, qui vous donne toutes les ref des noms.Car il n'y a pas toutes les options qui distinguent le type de référence, vous ne pouvez pas donner à chaque type de couleur différente.
Voir aussi cette question.