11 Stimmen

Kann ich die Revisionsnummer einer Übertragung erfahren?

Ich kann die Revisionsnummer in svn durch Befehle wie svn info sehen, aber in git kann ich nur sha Objektnamen sehen, gibt es eine Möglichkeit zu wissen, wie viele Revisionen übertragen wurden?

9voto

VonC Punkte 1117238

git beschreiben wäre der beste Weg, um diese Art von Informationen zu erhalten, wie in diesem Artikel vorgeschlagen andere SO Frage

[torvalds@g5 git]$ git describe parent
v1.0.4-14-g2414721

d.h. der derzeitige Leiter meines "übergeordneten" Zweigs basiert auf v1.0.4 aber da es darüber hinaus noch ein paar Übertragungen gibt, describe hat die Anzahl der zusätzlichen Übertragungen hinzugefügt ("14") und einen abgekürzten Objektnamen für die Übertragung selbst (" 2414721 ") am Ende.

Die Anzahl der zusätzlichen Übertragungen ist die Anzahl der Übertragungen, die durch " git log v1.0.4..parent ".
Das Hash-Suffix lautet " -g " + 7-char Abkürzung für die Tippübergabe von parent (das war 2414721b194453f058079d897d13c4e377f92dc6 ).

Beachten Sie, dass in Git 2.22 (Q2 2019) der letzte Satz geändert wurde, da das Minimum 7 Zeichen beträgt, die eindeutige Länge aber länger sein kann.

El git describe Dokumentation sagt jetzt:

Das Hash-Suffix lautet "-g" + unzweideutig Abkürzung für die Tippabgabe von parent (das war 2414721b194453f058079d897d13c4e377f92dc6 ).

Ver ffea024 übertragen (06 Apr 2019) von Philip Oakley ( PhilipOakley ) .
(Zusammengefasst von Junio C. Hamano -- gitster -- en 18c3ae0 festlegen , 25. Apr 2019)


Natürlich können Sie jederzeit Ihre Übertragungen zählen

git shortlog -s -n
  135  Tom Preston-Werner
  15  Jack Danger Canty
  10  Chris Van Pelt

El -s zerlegt alle Commit-Meldungen in die Anzahl der Commits, und die Option -n sortiert die Liste nach der Anzahl der Übertragungen.

Dieser Befehl kann auch nützlich sein für changelogs da Sie alle Änderungen, die jede Person vorgenommen hat, einfach wegwerfen können.
Es gibt noch ein paar andere nette Optionen:
-e fügt E-Mails an, und Sie können die Spaltenbreiten mit -w .
Überprüfen Sie die Manpage für weitere Informationen.


Mit Git 2.33 (Q3 2021) wissen Sie mehr über git describe genaues Ausgabeformat:

Ver Übergabe bfe35a6 (17. Mai 2021) von Anders Höckersten ( ahockersten ) .
(Zusammengefasst von Junio C. Hamano -- gitster -- en Übergabe d8c6dc2 , 10. Juni 2021)

describe-doc : Klärung der Standardlänge von Abkürzungen

Abgezeichnet von: Anders Höckersten

Klärung der Standardlänge für die abgekürzte Form, die für Commits in git describe verwendet wird.

Das Verhalten wurde in Git 2.11.0 geändert, aber die Dokumentation wurde nicht aktualisiert, um das neue Verhalten zu verdeutlichen.

git describe umfasst nun in seinem Manpage :

Anstatt die Standardanzahl von Hexadezimalziffern zu verwenden (die die je nach Anzahl der Objekte im Repository variiert, mit standardmäßig 7) des abgekürzten Objektnamens, verwenden Sie <n> Ziffern, oder so viele Ziffern wie nötig, um einen eindeutigen Objektnamen zu bilden.

git describe umfasst nun in seinem Manpage :

Das Hash-Suffix ist "-g" + eine eindeutige Abkürzung für den tip commit von parent (das war 2414721b194453f058079d897d13c4e377f92dc6 ).
Die Länge der Abkürzung skaliert mit dem Wachstum des Repositorys, indem die der ungefähren Anzahl der Objekte im Projektarchiv und einer kleinen mathematischen um das Geburtstagsparadoxon herum, und ist standardmäßig auf ein Minimum von 7 eingestellt.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X