Dieser Text befindet sich gegenwärtig in Bearbeitung, unterliegt ständigen Änderungen und kann dadurch nicht stets akkurat irgendeine freigegebene Version der Software Apache™ Subversion® beschreiben. Das Speichern dieser Seite als Lesezeichen oder andere auf diese Seite zu verweisen, ist keine so gute Idee. Besuchen Sie http://www.svnbook.com/, um stabile Versionen dieses Buchs zu erhalten.
svn blame (praise, annotate, ann) — Autor- und Revisions-Informationen innerhalb der angegebenen Dateien oder URLs ausgeben.
svn blame TARGET[@REV]...
Autor- und Revisions-Informationen innerhalb der angegebenen Dateien oder URLs ausgeben. Jede Textzeile erhält am Zeilenanfang eine Anmerkung mit dem Autor (Anwendernamen) und der Revisionsnummer der letzten Änderung.
Wenn Sie den Quelltext von
readme.txt
in Ihrem Test-Projektarchiv
mit Anmerkungen sehen wollen:
$ svn blame http://svn.red-bean.com/repos/test/readme.txt 3 sally This is a README file. 5 harry Don't bother reading it. The boss is a knucklehead. 3 sally …
Nur weil svn blame behauptet, dass
Harry readme.txt
zuletzt in Revision
5 geändert habe, sollten Sie verstehen, das dieser
Unterbefehl standardmäßig sehr pingelig bei der Bewertung,
was eine Änderung ist. Bevor Harry für die anscheinende
Aufmüpfigkeit Prügel bezieht, sollten Sie bedenken, dass
die Änderung, die er an der Datei vornahm, sich auf den
Zeicheninhalt und nicht auf den gesamten semantischen
Inhalt bezog. Vielleicht war seine Änderung das Ergebnis
einer unbedachten Behandlung dieser Datei durch ein Skript
zur Leerraum-Bereinigung. Zum genauen Verständnis dessen,
was Harry an dieser Datei in Revision 5 geändert hat,
sollten Sie die einzelnen Änderungen und die damit
verbundenen Protokollnachrichten untersuchen.
$ svn log -c 5 http://svn.red-bean.com/repos/test/readme.txt ------------------------------------------------------------------------ r5 | harry | 2008-05-29 07:26:12 -0600 (Do, 29. May 2008) | 1 Zeile Commit the results of 'double-space-after-period.sh'. ------------------------------------------------------------------------ $ svn diff -c 5 http://svn.red-bean.com/repos/test/readme.txt Index: http://svn.red-bean.com/repos/test/readme.txt =================================================================== --- http://svn.red-bean.com/repos/test/readme.txt (revision 4) +++ http://svn.red-bean.com/repos/test/readme.txt (revision 5) @@ -1,5 +1,5 @@ This is a README file. -Don't bother reading it. The boss is a knucklehead. +Don't bother reading it. The boss is a knucklehead. INSTRUCTIONS ============ $
Klar, dass Harry nur die Leerzeichen in dieser Zeile
geändert hat. Glücklicherweise kann Ihnen die Option
--extensions
(-x
) dabei
helfen, besser herauszufinden, wann eine
bedeutende Änderung an einer
Textzeile vorgenommen wurde. Hier ist beispielsweise die
Anmerkung ohne Berücksichtigung von bloßen
Leerraum-Änderungen::
$ svn blame -x -b http://svn.red-bean.com/repos/test/readme.txt 3 sally This is a README file. 4 jess Don't bother reading it. The boss is a knucklehead. 3 sally …
Falls Sie die Option --xml
benutzen,
bekommen Sie die Anmerkungen als XML-Ausgabe, jedoch nicht
den eigentlichen Inhalt der Zeilen:
$ svn blame --xml http://svn.red-bean.com/repos/test/readme.txt <?xml version="1.0"?> <blame> <target path="readme.txt"> <entry line-number="1"> <commit revision="3"> <author>sally</author> <date>2008-05-25T19:12:31.428953Z</date> </commit> </entry> <entry line-number="2"> <commit revision="5"> <author>harry</author> <date>2008-05-29T13:26:12.293121Z</date> </commit> </entry> <entry line-number="3"> … </entry> </target> </blame> $