Risposte:
Prova l'opzione decorare.
git log --graph --all --decorate
Annota i commit indicati da tag o rami.
--prettyte puoi usare %ddove vuoi le 'decorazioni'.
git log --graph --all --oneline --decorate. Ho un alias git graphche usa --pretty(per mostrare anche altre cose, come autore e data), ma %dnon mi dà i colori di --decorate. Per ora uso il giallo per tutti i miei riferimenti, sai come posso lasciare che --prettyla %dstringa erediti i colori di --decorate?
--prettyformati, aggiungi %C(auto)prima dell'elemento ciò che dovrebbe essere colorato. ad es.git log --pretty=format:"%cd %h %cn %s %C(auto)%d"
Stavo cercando qualcosa di simile a questo, ma volevo sapere quale ramo è stato fatto un cambiamento. Speriamo che questa risposta possa essere utile anche agli altri.
Sto studiando un rischio con la blackboxcrittografia, in cui un repository e i suoi rami / tag potrebbero non essere disponibili per gli attuali adminsquando un numero sufficiente di utenti lascia un progetto e la keyringsdirectory non è stata basata religiosamente al di fuori del master)
Ho scoperto che la risposta di seguito è stata utile dove la keyringsdirectory non è stata aggiornata dal master ...
Fondamentalmente l'aggiunta --sourceera ciò di cui avevo bisogno per mostrare i rami / tag. L'aggiunta --name-onlymostrerà anche quale file è stato effettivamente modificato.
cd /path/to/repo-that-uses-blackbox-encryption
git log --graph --all --decorate --source --name-only keyrings
--sourcesolo dà HEADper tutti gli impegni. In combinazione con --allquesto sembra distinguere tra diversi rami, ma le informazioni visualizzate non sono quelle che mi aspetto: per i commit che ho fatto master, invece di ottenere refs/heads/master, ottengo un ramo privato ( refs/remotes/origin/…). Ho il sospetto che fusioni e / o nuove filiali facciano Gitperdere informazioni sulla cronologia.
--all, posso filtrare i rami con --branches --remotes=<pattern>, ma non appena due rami vengono uniti insieme, Git non ha più le informazioni su quale è stato eseguito il commit al termine.
Se ti capita di usare oh-my-zsh come terminale, allora sono disponibili molti alias git. Tutto ciò può essere visto nel loro repository oh-my-zsh / plugins / git . Se non usi questo terminale, puoi semplicemente prendere gli alias e incollare quelli che ti piacciono nel tuo ambiente.
La risposta accettata presenta il git log --graph --all --decoratecomando, che è disponibile come glggaalias in oh-my-zsh.
Personalmente preferisco l' glodsalias che si traduce in:
git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short
gitaggiornamento.