web-dev-qa-db-de.com

Git-Log einer einzelnen Revision

Ich habe eine Zusage c. Ich möchte die Änderungsmenge dieser exakten Commit-C + -Metainformation und keiner anderen erhalten. Gibt es einen einfacheren Weg als git log -p c^..c das zu tun?

161
zedoo

Sie können show verwenden:

git show commit_id
247
Michał Trybus

Die Antwort von Michal Trybus ist der Einfachheit halber die beste. Aber wenn Sie den Unterschied in Ihrer Ausgabe nicht wollen, können Sie immer etwas tun wie:

git log -1 -U c

Auf diese Weise erhalten Sie das Festschreibungsprotokoll. Anschließend haben Sie die vollständige Kontrolle über alle Git-Protokollierungsoptionen für Ihre Automatisierungszwecke. In Ihrem Fall sagten Sie, Sie wollten das Änderungsset. Der für den Menschen lesbarste Weg, dies zu erreichen, wäre:

git log --name-status --diff-filter="[A|C|D|M|R|T]" -1 -U c

Oder wenn Sie eine Git-Version größer als 1.8.X verwenden, ist dies:

git log --name-status --diff-filter="ACDMRT" -1 -U c

Dadurch erhalten Sie ähnliche Ergebnisse wie:

commit {c}
Author: zedoo <[email protected]>
Date: Thu Aug 2 {time-stamp}

   {short description}
D    zedoo/foo.py
A    zedoo/bar.py

Natürlich können Sie die Ereignisse herausfiltern, die Sie für richtig halten, und die Rückgabe nach Ihren Wünschen mit den traditionellen git-log-Befehlen formatieren, die gut dokumentiert sind hier .

53
SuperFamousGuy

git log -p c -1 macht genau das.

13
Robert Munteanu