2777 Stimmen

Wie kann man den Hash für den aktuellen Commit in Git abrufen?

Ich möchte (vorerst) die Möglichkeit beibehalten, Git-Änderungssätze mit in TFS gespeicherten Workitems zu verknüpfen.

Ich habe bereits ein Tool geschrieben (mit einem Hook von Git), mit dem ich Workitem-Identifikatoren in die Nachricht eines Git Changesets einfügen kann.

Außerdem möchte ich den Hash der Git-Übertragung in einem benutzerdefinierten TFS-Workitem-Feld speichern. Auf diese Weise kann ich ein Workitem in TFS untersuchen und sehen, welche Git-Änderungssätze mit dem Workitem verbunden sind.

Wie kann ich den Hash des aktuellen Commits von Git einfach abrufen?

3 Stimmen

Verwenden Sie git log um die letzten Übertragungen abzurufen, die den vollständigen Übertragungshash anzeigen

4039voto

Jakub Narębski Punkte 286531

Um jede erweiterte Objektreferenz in einen Hash zu verwandeln, verwenden Sie git-rev-parse :

git rev-parse HEAD

o

git rev-parse --verify HEAD

Zum Abrufen des kurzen Hashes:

git rev-parse --short HEAD

Zum Drehen Referenzen (z.B.. Zweige und Tags ) in Hashes, verwenden Sie git show-ref y git for-each-ref .

559voto

outofculture Punkte 5546

Um den verkürzten Commit-Hash zu erhalten, verwenden Sie die %h Formatbezeichner:

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

%H steht für den langen Commit-Hash. Auch, -1 kann direkt anstelle von -n 1 .

201voto

Paul Pladijs Punkte 16370

Eine weitere, die git log verwendet:

git log -1 --format="%H"

Er ist dem von @outofculture sehr ähnlich, allerdings etwas kürzer.

159voto

Alexander Punkte 96032

Um die vollständige SHA zu erhalten:

$ git rev-parse HEAD
cbf1b9a1be984a9f61b79a05f23b19f66d533537

Um die gekürzte Version zu erhalten:

$ git rev-parse --short HEAD
cbf1b9a

104voto

ecwpz91 Punkte 1317

Commit-Hash

git show -s --format=%H

Abgekürzter Commit-Hash

git show -s --format=%h

El -s Flagge ist die gleiche wie --no-patch und steht für "Diff-Ausgabe unterdrücken".

Klicken Sie auf aquí für mehr git show Beispiele.

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