Wie verwende ich git diff
nur Commit-Meldungen anzeigen?
Ich möchte nur die Nachricht des Commit, nicht den Namen der Dateien. Ich versuche, ein Änderungsprotokoll in Git zu erhalten.
Chris Hansen
Wie verwende ich git diff
nur Commit-Meldungen anzeigen?
Ich möchte nur die Nachricht des Commit, nicht den Namen der Dateien. Ich versuche, ein Änderungsprotokoll in Git zu erhalten.
Simon Klewer
Du könntest es versuchen git log
daher,
git log commitA...commitB
Die Notation mit drei Punkten ‘…’ gibt Ihnen nur die Commit-Meldungen für alle Commits, die von CommitA oder CommitB erreichbar sind, aber nicht von beiden – dh den Unterschied zwischen CommitA und CommitB.
Sie können sich einfach auf die Commit-Nachricht reduzieren, mit etwas wie:
git log --pretty=%B commitA...commitB
Einige Beispiele
# Show a log of all commits in either the development branch or master branch since they diverged.
git log --pretty=%B development...master
# Ahow a log of all commits made to either commit b8c9577 or commit 92b15da, but not to both.
git log --pretty=%B b8c9577...92b15da
# Show a log for all commits unique to either the local branch master or local version of the origin's master branch.
git co master
git log --pretty=%B master...origin/master
# Show a log for all commits unique to either the local HEAD or local version of the origin's master branch.
git co master
# Hack, hack
git log --pretty=%B HEAD...origin/master
Kann Meister sein … Entwicklung, nicht Entwicklung … Meister
– Anton Rybalko
5. November 2020 um 14:17 Uhr
%B
steht für raw body (unwrapped subject and body)
. Ich denke, dass die Verwendung der %s subject
ist besser.
– IgorZ
21. September 2021 um 12:12 Uhr
CodeWizard
Verwenden:
git log --oneline -n 10
Es wird die letzte ausgedruckt n (10) Festschreibungen auf einzelne Zeilen. Nur die Commit-Nachrichten.
Sie können es auch mit anderen Protokollparametern kombinieren, wie:
git log --oneline --graph --decorate -n 10
geht das auch mit submodulen? Ich möchte auch die Submodule ändern
– Chris Hansen
10. November 2015 um 23:22 Uhr
Untermodule sind im Grunde ein Git-Repository innerhalb des Root-Git-Repositorys, sodass Sie dies innerhalb des Ordners tun müssen. Sie können jederzeit ein Skript oder einen Alias schreiben, um dies für Sie zu tun.
– CodeWizard
10. November 2015 um 23:24 Uhr
Kann ich git diff nicht verwenden, um die Änderungen des Submoduls anzuzeigen?
– Chris Hansen
10. November 2015 um 23:24 Uhr
zum Beispiel: git submodule foreach git log --oneline ...
. Die for each-Schleife wird auf allen Ihren Submodulen ausgeführt.
– CodeWizard
10. November 2015 um 23:25 Uhr
Anton Rybalko
Ergänzend zu Simon Clewers Antwort:
git log master..dev --no-merges --pretty='format:%cs %s'
Es druckt nur Subjekte von Commits zwischen Master- und Development-Branchs (ohne Merge-Commits). Etwas wie das:
2020-12-31 Hot fix
2020-12-30 Change some stuff
2020-12-29 Add the feature
Wechsel zwischen lokalen und entfernten Filialen:
git log HEAD..origin --no-merges --pretty='format:%cs %s'
Siehe auch Was sind einige gute Möglichkeiten, ein Änderungsprotokoll mit Git zu verwalten?.
Simon
git log --pretty=%B
zeigt Ihnen die letzten Commit-Meldungen.
Falls Sie die Anzahl der angezeigten Commit-Meldungen durch eine Zahl begrenzen möchten, Nkönnen Sie dies tun, indem Sie zusätzlich ein angeben -N
z.B,
git log -3 --pretty=%B
für die letzten drei Commit-Nachrichten.
Verwenden Sie stattdessen git log?
– Ismail Badawi
10. November 2015 um 23:08 Uhr