2010-01-15 16 views
12

Ich habe ein bisschen Code, für den ich Revisionshistorie sehen möchte. In der Beispieldatei enthält Zeile 300 etwas "Interessantes". Wie kann ich mit svn sehen, wenn diese Zeile geändert wurde und die Svn-Kommentar (e), die die Änderung dieser Zeile betreffen, überprüfen. (Beachten Sie, dass frühere Revisionen dieser Datei in Zeile 300 wahrscheinlich nicht meine Zielzeile haben).svn: Wie kann ich feststellen, wann eine bestimmte Zeile zuletzt geändert wurde?

Antwort

15

Sie könnten den SVN-Befehl blame verwenden. Dadurch werden Autoren- und Revisionsnummern pro Zeile für das angegebene Ziel gedruckt. Sobald Sie die Revisionsnummer haben, können Sie die mit dieser Revision zugeordnet Protokolle und andere Änderungen verpflichten überprüfen log usw. verwenden

+6

Auch bekannt als Svn Annotate, wenn Sie weniger rachsüchtig fühlen. (Oder Ihr Chef hat den Code geschrieben und schaut über Ihre Schulter.) – jmanning2k

2

Da ist die "Svn Schuld" Werkzeug dafür.

+2

Beste Befehl jemals zu wissen! Außer wenn mein Name auftaucht ... – RedFilter

+3

Sie haben auch einen "Svn Lob" Alias ​​dafür, vielleicht passt dir das besser, wenn du ein schlechtes Gefühl hast? ;) – kusma

1

svn blame filename

im Protokoll Dann ist für die Revision, in dem sie geändert wurde.

0

Wie andere haben bereits erwähnt, können Sie verwenden:

svn annotate filename 

zu zeigen, wenn diese Linie wurde zuletzt geändert. Seien Sie jedoch vorsichtig, da dies das letzte Mal anzeigt, dass irgendetwas in dieser Zeile geändert wurde. Wenn also der Code in der Datei verschoben wurde, wird er an einer Stelle gelöscht und an einer anderen Stelle eingefügt. Er wird dann angezeigt, wenn die Zeile verschoben wurde, nicht unbedingt, wenn sie geändert wurde. Dasselbe gilt, wenn die Linie in eine Schleife oder in eine if-Anweisung hinein oder aus dieser heraus verschoben wurde.

+0

Annotieren klingt besser als Schuld. Zumindest für das, was ich zu der Zeit brauchte. :-) – Les

4

svn blame -v filename. Verbose gibt Revisionsnummer, Name und Datum

2
svn [praise|annotate|blame] filename 

gibt Ihnen die Versionsnummer und letzten Writer oder Editor.

svn [praise|annotate|blame] -v filename 

wird Ihnen zusätzliche Informationen geben. , wenn Sie den Zweig zusammengeschlossen haben, in diesem Fall

svn blame -g filename 

Sie den folgenden Befehl verwenden sollten alle verfügbaren Optionen

svn blame --help 
Verwandte Themen