Antworten:
Probieren Sie die Dekorationsoption aus.
git log --graph --all --decorate
Es kommentiert Commits, auf die Tags oder Zweige verweisen.
--prettySie verwenden, %dwo Sie die "Dekorationen" wollen.
git log --graph --all --oneline --decorate. Ich habe einen Alias git graph, der verwendet --pretty(um auch andere Dinge wie Autor und Datum anzuzeigen), aber %des gibt mir nicht die Farben von --decorate. Ich verwende vorerst Gelb für alle meine Schiedsrichter. Weißt du, wie ich die Zeichenfolge von --pretty's %dString erben lassen kann --decorate?
--prettyFormaten haben möchten , fügen Sie %C(auto)vor dem Element hinzu, was gefärbt werden soll. zBgit log --pretty=format:"%cd %h %cn %s %C(auto)%d"
Ich suchte nach etwas Ähnlichem - wollte aber wissen, in welchem Zweig eine Änderung vorgenommen wurde. Hoffentlich wird diese Antwort auch anderen von Nutzen sein.
Ich untersuche ein Risiko mit blackboxVerschlüsselung, bei dem ein Repo und seine Zweige / Tags für den aktuellen Stand möglicherweise nicht mehr verfügbar sind, adminswenn genügend Benutzer ein Projekt verlassen und das keyringsVerzeichnis nicht religiös auf dem Master basiert.
Ich fand, dass die Antwort unten hilfreich war, wenn das keyringsVerzeichnis nicht vom Master aktualisiert wurde ...
Grundsätzlich --sourcewar das Hinzufügen das, was ich brauchte, um die Zweige / Tags anzuzeigen. Durch Hinzufügen --name-onlywird auch angezeigt, welche Datei tatsächlich geändert wurde.
cd /path/to/repo-that-uses-blackbox-encryption
git log --graph --all --decorate --source --name-only keyrings
--sourceallein HEADfür alle Commits. In Kombination mit --allscheint dies zwischen verschiedenen Zweigen zu unterscheiden, aber die angezeigten Informationen entsprechen nicht meinen Erwartungen: Für Commits, die ich durchgeführt habe , erhalte ich einen privaten Zweig ( ) master, anstatt ihn zu refs/heads/mastererhalten refs/remotes/origin/…. Ich vermute, dass Zusammenführungen und / oder neue Zweige dazu führen Git, dass Verlaufsinformationen verloren gehen.
--allkann ich nach den Zweigen mit filtern --branches --remotes=<pattern>, aber sobald zwei Zweige zusammengeführt werden, verfügt Git nicht mehr über die Informationen, für die der Commit zum Zeitpunkt des Commits ausgeführt wurde.
Wenn Sie oh-my-zsh als Terminal verwenden, stehen eine Reihe von Git-Aliasen zur Verfügung. All dies ist auf ihrem Repo oh-my-zsh / plugins / git zu sehen . Wenn Sie dieses Terminal nicht verwenden, können Sie einfach die Aliase abrufen und die gewünschten in Ihre eigene Umgebung einfügen.
Die akzeptierte Antwort enthält den git log --graph --all --decorateBefehl, der als glggaAlias in oh-my-zsh verfügbar ist .
Persönlich bevorzuge ich den glodsAlias, der übersetzt bedeutet:
git log --graph --pretty='%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%ad) %C(bold blue)<%an>%Creset' --date=short
gitAktualisierungen zu erfolgen.