it-swarm.com.de

Wie zeige ich eine ältere Version einer SVN-Datei an?

Ich habe eine SVN-Datei, der jetzt etwas Logik fehlt, und ich muss ungefähr 40 Revisionen zurücklegen, als die Logik, die ich brauche, zurückgeht. Abgesehen von dem Versuch, einen Unterschied der Datei in der Befehlszeile anzuzeigen ( sehr schwer zu lesen ) - gibt es trotzdem eine Kopie dieser Datei, die ich überprüfen kann, damit ich sie untersuchen kann, um Teile wiederherzustellen?

145
Xeoncross

Sie können auf eine ältere Version aktualisieren:

svn update -r 666 file

Oder Sie können die Datei direkt ansehen:

svn cat -r 666 file | less
225
John Kugelman

Es ist auch interessant, die Datei der aktuellen Arbeitsversion mit derselben Datei einer anderen Revision zu vergleichen. 

Sie können wie folgt vorgehen:

$ svn diff -r34 file
4
Kreshnik

Aktualisieren Sie auf eine bestimmte Version:

svn up -r1234 file
2
chris

Ich glaube, der beste Weg, Revisionen anzuzeigen, ist die Verwendung eines Programms/einer App, die es Ihnen leicht macht. Ich benutze gerne trac: http://trac.edgewall.org/wiki/TracSubversion

Es bietet einen großartigen SVN-Browser und macht es wirklich einfach, Ihre Revisionen wieder aufzurufen.

Es kann ein wenig übertrieben sein, dies für eine bestimmte Revision festzulegen, die Sie überprüfen möchten. Es kann jedoch nützlich sein, wenn Sie dies in Zukunft viel tun werden.

1
wajiw

Mit den neuesten Versionen von Subclipse können Sie sie tatsächlich ohne die cmd-Eingabeaufforderung anzeigen. Klicken Sie in der Datei einfach mit der rechten Maustaste auf => Team => Wechseln Sie zu einem anderen Zweig/Tag/einer anderen Revision. Neben dem Revisionsfeld klicken Sie auf Auswählen und Sie sehen alle Versionen dieser Datei.

1
Kheem

Um direkt die Frage zu beantworten, wie "eine Kopie dieser Datei abgerufen wird":

svn cat -r 666 file > file_r666

dann können Sie den neu erstellten file_r666 mit einem beliebigen Viewer oder Vergleichsprogramm anzeigen, z.

kompare file_r666 file

zeigt schön die unterschiede.

Ich habe die Antwort gepostet, weil die akzeptierten Antworten tatsächlich keine Kopie der Datei enthalten und svn cat -r 666 file | vim nicht mit meinem System funktioniert (Vim: Error reading input, exiting...)

0
rehctawrats