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

2voto

ignorant Punkte 1201

So würde ich es in Python machen (basierend auf @kenorbs Bash-Antwort)

def get_git_sha():
    # Which branch are we on?
    branch = open(".git/HEAD", "r").read()

    # Parse output "ref: refs/heads/my_branch" -> my_branch
    branch = branch.strip().split("/")[-1]

    # What's the latest commit in this branch?
    return open(f".git/refs/heads/{branch}").read().strip()

1voto

Marcelo Lazaroni Punkte 8611

Hier ist eine weitere Möglichkeit, dies mit :)

git log | grep -o '\w\{8,\}' | head -n 1

0voto

Usman Ali Maan Punkte 190

Echo "Druck der letzten Commit-id# für den aktuellen Zweig:";

 git reflog

Image to show actul results

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