600 Stimmen

Holen Sie sich den kurzen Hash der Git-Version

Gibt es eine sauberere Methode, um den Hash der Kurzversion von HEAD von Git?

Ich möchte die gleiche Ausgabe sehen, wie ich sie von:

 git log -n 1 | head -n 1 | sed -e 's/^commit //' | head -c 8

Ursprünglich habe ich den obigen Befehl verwendet, um einen Versionsstring zu erzeugen, aber das hier ist noch besser:

git describe --tags

Es werden Zeichenfolgen ausgegeben wie 0.1.12 (markierte Übergabe) oder 0.1.11-5-g0c85fbc (fünf Übertragungen nach dem Tag).

2 Stimmen

Da Sie anscheinend gut darin sind, Daten mit Pipes und ähnlichem zu manipulieren, sollten Sie wissen, wie Git-Aliase . In diesem Fall gibt es einen Befehl für das, was Sie wollen (siehe Antworten), aber irgendwann werden Sie etwas finden, was es nicht gibt, und dafür sind Aliase hervorragend geeignet.

0 Stimmen

@ MatrixFrog Danke für den Tipp! Ich hatte bereits einige einfache Git-Aliase, aber ich wusste nicht, wie leistungsfähig sie sein können, bis jetzt. Mir gefällt besonders die Graphviz-Anzeige.

1 Stimmen

Hm. Wenn ich laufe git describe --tags Ich verstehe die Botschaft, "fatal: Keine Namen gefunden, kann nichts beschreiben". .

1091voto

Mark Longair Punkte 412179

Versuchen Sie dies:

git rev-parse --short HEAD

Der Befehl git rev-parse kann eine bemerkenswerte Anzahl von verschiedenen Dingen tun, so dass man sich durch die Dokumentation Allerdings muss man sehr vorsichtig sein, um das zu erkennen.

162voto

Karl Bielefeldt Punkte 45032

Sie können so gut wie jedes beliebige Format mit --pretty=format:

git log -1 --pretty=format:%h 

Die Bedeutung von %h , von man git log ist:

%h
abgekürzter Commit-Hash

Weitere Formatoptionen finden Sie unter man git log und suchen Sie den Abschnitt, der mit dem Satz " Platzhalter, die sich zu Informationen aus der Übertragung erweitern: ".

115voto

Sanjeev Punkte 1283
git log -1 --abbrev-commit

wird es auch tun.

git log --abbrev-commit

listet die Protokolleinträge mit abgekürzter SHA-1-Prüfsumme auf.

70voto

Ein einfacher Weg, um die Git-Commit-Kurzversion und die Git-Commit-Nachricht zu sehen, ist:

git log --oneline

Beachten Sie, dass dies eine Abkürzung ist für

git log --pretty=oneline --abbrev-commit

42voto

Steven Shaw Punkte 5773

Eine wirklich einfache Möglichkeit ist die:

git describe --always

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