Git-Protokollausgabeprotokolldatei


83

Ich mache eine Aufgabe in einem Universitätskurs und verwende git als Versionskontrolle für diese Aufgabe. Das Spiel, an dem ich gearbeitet habe, ist abgeschlossen, aber zusammen mit der Hand, in der ich das Git-Protokoll einreichen möchte, zeigt es effektiv meine Fortschritte während der Zeit, in der ich daran gearbeitet habe.

Ich habe das versucht:

git log --stat > log.log

Aber es gibt mir mehr oder weniger nur sehr unlesbare Sachen. Kann mir jemand mit einem Befehl helfen, damit ich eine schöne Formatierung dazu bekomme?


Worauf soll sich die Ausgabe konzentrieren? Die Commit-Nachrichten? Die Verzweigung? Die Daten? Die Dateien? Die Veränderungen?
GoZoner

Antworten:


133

Ich würde empfehlen, ein anderes Format als das Standardformat zu verwenden. Meine übliche Wahl ist die Zusammenfassung mit dem Diagramm, aber normalerweise reicht eine Zeilenübersicht allein aus.

Option 1: Einzeilige Zusammenfassung mit Grafik

git log --pretty=format:'%h : %s' --graph > log.log

Ergebnisse in:

* 2d3acf9 : ignore errors from SIGCHLD on trap
*   5e3ee11 : Merge branch 'master' of git://github.com/dustin/grit
|\  
| * 420eac9 : Added a method for getting the current branch.
* | 30e367c : timeout code and tests
* | 5a09431 : add timeout protection to grit
* | e1193f8 : support for heads with slashes in them
|/  
* d6016bc : require time for xmlschema

Option 2: Einzeilige Zusammenfassung ohne Grafik

git log --pretty=format:'%h was %an, %ar, message: %s' > log.log

Ergebnisse in:

a6b444f was Scott Chacon, 5 days ago, message: dammit, this is the second time this has re
49d77f7 was Scott Chacon, 8 days ago, message: modified index to create refs/heads if it i
9764edd was Hans Engel, 11 days ago, message: Add diff-lcs dependency
e1ba1e3 was Hans Engel, 11 days ago, message: Add dependency for Open4
0f87b4d was Scott Chacon, 12 days ago, message: merged recent changes

Weitere Formatierungsoptionen finden Sie in den Dokumenten hier


Ich bekomme '-', um Pfade von Revisionen zu trennen
Marian Klühspies

1
Die Formatplatzhalter finden Sie unter git-scm.com/docs/git-log . Suche nach Unterüberschrift "hübsche Formate"
Eric Majerus

Zu Ihrer Information: Ich weiß, dass diese Antwort alt ist, aber der Link "docs" ist defekt. Ich werde mit Sicherheit nicht das tun, was andere mir angetan haben: Stimmen Sie meine Antwort 3, 4 oder 5+ Jahre später ab, da der Link später schlecht wird. Ich habe eine Bearbeitung eingereicht, um auf git-scm.com ( git-scm.com/docs/pretty-formats ) zu verweisen .
Erick Brown

Ungültiger Objektname% h
Codierter Container

10

Versuchen Sie diese Linie

git log > log.txt


1
Dies ist die Basisantwort, alles was ich brauchte.
Jonathan

1
Git-Protokoll allein zeigt Tags und Zweige (alle Zweige, einschließlich Remote-Zweige) auf der Konsole an. Git log> log.txt enthält diese Tag- / Zweiginformationen jedoch nicht. Ich möchte wirklich wissen, wie man sie gleich macht (dh mit Tag / Branch-Infos ausgegeben wird)
Robin Hsu

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.