Réponses:
Essayez l'option décorer.
git log --graph --all --decorate
Il annote les commits pointés par des balises ou des branches.
--prettyvous pouvez utiliser %doù vous voulez les «décorations».
git log --graph --all --oneline --decorate. J'ai un alias git graphqui utilise --pretty(afin d'afficher également d'autres choses, comme l'auteur et la date), mais %dil ne me donne pas les couleurs de --decorate. J'utilise le jaune pour toutes mes références pour l'instant, savez-vous comment je peux laisser --prettyla %dchaîne hériter des couleurs de --decorate?
--prettyformats, ajoutez %C(auto)avant l'élément ce qui doit être coloré. par exemplegit log --pretty=format:"%cd %h %cn %s %C(auto)%d"
Je cherchais quelque chose de similaire - mais je voulais savoir dans quelle branche un changement avait été effectué. Espérons que cette réponse sera également utile aux autres.
J'étudie un risque avec le blackboxchiffrement, où un référentiel et ses branches / balises peuvent devenir indisponibles pour le adminsmoment où suffisamment d'utilisateurs quittent un projet et que le keyringsrépertoire n'a pas été religieusement basé hors du maître)
J'ai trouvé que la réponse ci-dessous était utile lorsque le keyringsrépertoire n'était pas mis à jour à partir du maître ...
Fondamentalement, --sourcej'ai ajouté ce dont j'avais besoin pour afficher les branches / balises. L'ajout --name-onlyindiquera également quel fichier a été réellement modifié.
cd /path/to/repo-that-uses-blackbox-encryption
git log --graph --all --decorate --source --name-only keyrings
--sourceseul donne HEADpour tous les commits. En combinaison avec --all, cela semble faire la distinction entre différentes branches, mais les informations affichées ne correspondent pas à ce que j'attends: pour les validations que j'ai faites dans master, au lieu d'obtenir refs/heads/master, j'obtiens une branche privée ( refs/remotes/origin/…). Je soupçonne que les fusions et / ou les nouvelles branches font Gitperdre des informations d'historique.
--all, je peux filtrer sur les branches avec --branches --remotes=<pattern>, mais dès que deux branches sont fusionnées, Git n'a plus les informations sur lesquelles on avait le commit quand cela a été fait.
Si vous utilisez oh-my-zsh comme terminal, un tas d'alias git sont disponibles. Tout cela peut être vu sur leur repo oh-my-zsh / plugins / git . Si vous n'utilisez pas ce terminal, vous pouvez simplement récupérer les alias et coller ceux que vous aimez dans votre propre environnement.
La réponse acceptée présente la git log --graph --all --decoratecommande, qui est disponible comme glggaalias dans oh-my-zsh.
Personnellement, je préfère l' glodsalias qui se traduit par:
git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short
gitmise à jour récente .