Réponses:
Essayez l'option décorer.
git log --graph --all --decorate
Il annote les commits pointés par des balises ou des branches.
--pretty
vous pouvez utiliser %d
où vous voulez les «décorations».
git log --graph --all --oneline --decorate
. J'ai un alias git graph
qui utilise --pretty
(afin d'afficher également d'autres choses, comme l'auteur et la date), mais %d
il 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 --pretty
la %d
chaîne hériter des couleurs de --decorate
?
--pretty
formats, 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 blackbox
chiffrement, où un référentiel et ses branches / balises peuvent devenir indisponibles pour le admins
moment où suffisamment d'utilisateurs quittent un projet et que le keyrings
répertoire n'a pas été religieusement basé hors du maître)
J'ai trouvé que la réponse ci-dessous était utile lorsque le keyrings
répertoire n'était pas mis à jour à partir du maître ...
Fondamentalement, --source
j'ai ajouté ce dont j'avais besoin pour afficher les branches / balises. L'ajout --name-only
indiquera é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
--source
seul donne HEAD
pour 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 Git
perdre 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 --decorate
commande, qui est disponible comme glgga
alias dans oh-my-zsh.
Personnellement, je préfère l' glods
alias 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
git
mise à jour récente .