De la couleur dans git log
Lorsque vous exécutez git log --decorate --pretty=oneline
à la sortie des entrées comme (HEAD, refs/published/master, master)
avec la coloration.
J'ai aussi de la suite dans mon gitconfig:
[color "branch"]
current = yellow reverse
local = yellow
remote = green
Comment reproduire ces couleurs pour faire un format personnalisé comme suit?
git log --decorate --stat --graph --pretty=format:"%d %Cgreen%h%Creset (%ar - %Cred%an%Creset), %s%n"
Vous devez vous connecter pour publier un commentaire.
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
.De la notes de version:
La
git log --decorate
mettra par défaut:et peut être modifié par le biais de
color.decorate
config.Mais la
git log --format
n'offre pas de moyen d'afficher précisément laHEAD
ou télécommandes ou branche: tous les trois sont affichées par le biais de%d
, avec une seule couleur possible.Mise à jour Mai 2013, comme mentionnés ci-dessous par Elad Shahar (upvoted), git 1.8.3 offre une option de plus:
Ce Atlassian post de blog commentaires que cette fonctionnalité fait partie de plusieurs autres porté sur le format (
git rebase
,git count-objects
) et les couleurs (git branch -vv
)Cela vient en plus de la précédente
auto reset
de la 1.8.2, qui désactive automatiquement les couleurs lors de la sortie n'est pas utilisée pour une terminal1Remarque: git 2.4+ (Q2 2015) permettra de faire un meilleur travail de la réinitialisation de couleur autour de noms de branche.
Voir s'engager 5ee8758 par Junio C Hamano (
gitster
):Noter que git 2.5 (T2 2015) correction d'un bug:
Voir s'engager 429ad20 par Junio C Hamano (
gitster
), 13 Mai 2015.(Fusionnés par Junio C Hamano --
gitster
-- dans s'engager fd70780, 22 Mai 2015)Git 2.9.x+ (Q3 2016) fixera un autre bug, et l'honneur de
color=auto
par%C(auto)
Git 2.10.2 (Oct. 2016) résout d'autres bugs avec s'engager 82b83da (29 septembre 2016), et s'engager c99ad27 le 17 septembre 2016) par René Scharfe (`).
(Fusionnés par Junio C Hamano --
gitster
-- dans s'engager 76796d4, le 28 octobre 2016)--pretty
offre les mêmes informations par le biais%d
comme un bloc, ce qui signifie que vous ne peut pas avoir la même fine au niveau de la configuration de la couleur avec--pretty
que vous avez avec--decorate
.git config --show-origin -l
: vous verrez tous vos configs. Vous pouvez ensuite grep pour "couleur".Parenthesize eux:
Donc
%C(yellow reverse)
serait de travailler.%d
est toutes les branches de sorte qu'il pourrait ressembler à(HEAD, master)
, dans ce cas, la tête doit être le bleu et le maître doit être vert (je crois que ceux sont les couleurs par défaut). où%C(yellow)%d%Creset
ferait-il de la même couleur.git log --decorate --oneline --date=...
L'option de configuration
log.decorate
pouvez activer/désactiver par défaut les décorations dans les journaux.Une fois que c'est fait, vous pouvez utiliser
color.decorate.*
de jouer avec les couleurslog.decorate=full
provoque la ref noms à être imprimés avec leurs préfixes (refs/heads/
, etc.); Je trouvelog.decorate=short
plus utile.short
plutôt quefull
Certains voudront peut-être utiliser ce :
%C(colorname)
Ce n'est pas nécessaire de changer la couleur de config.
Exemple : Coloriage le nom de l'auteur en jaune
Régulier couleurs ANSI devrait fonctionner https://en.wikipedia.org/wiki/ANSI_escape_code