web-dev-qa-db-ger.com

SVN-Zweigvergleich

Wie vergleiche ich eine Branche mit einer anderen? Ich möchte einen Zweig mit der neuesten Version im Kofferraum vergleichen.

40
tekumara

Sie könnten mit beginnen:

svn diff http://REPOS/trunk http://REPOS/branches/B

(Dabei ist http://REPOS Ihr Repository-Pfad einschließlich der übergeordneten Elemente von trunk und branches.)

Dadurch wird eine große Menge Text gedruckt, einschließlich aller Textänderungen, jedoch nicht der binären Änderungen, außer um anzugeben, wo und wann sie aufgetreten sind.

61
Edmund

Wenn Sie nur nach einem hohen Grad an Dateien suchen, die sich unterscheiden und nicht den gesamten Inhalt anzeigen möchten, verwenden Sie Folgendes:

svn diff ^/trunk ^/branches/dev --summarize

(Dies vergleicht den Stamm und den Dev-Zweig)

13
cchamberlain

Normalerweise checke ich die beiden Zweige (oder den Zweig und den Stamm) in Verzeichnisse aus ..__ Dann verwende ich ein grafisches Werkzeug wie Kompare oder ähnliches (je nach Präferenzen, Betriebssystem, ...) ..__ wirklich hilfreich für mich, wenn ich komplexe Zusammenführungen durchführen muss. 

4
CMorgan

Da mangelnde Reputation mich dies nicht als Kommentar zu einer vorhandenen Antwort hinzufügen lässt, muss ich sie als separate Antwort hinzufügen.

Eine nützliche Option für svn diff war für mich --ignore-properties. Meine beiden Niederlassungen hatten identischen Code, aber unterschiedliche Zusammenführungsgeschichten.

Die Verwendung von --ignore-properties erlaubte mir, mir zu beweisen, dass dies der Fall war, ohne die große Menge an "svn: mergeinfo" -Eigenschaftsänderungen durchzugehen.

3
Michael Firth

Hier ist die Dokumentation für den svn diff-Befehl.

1
Michael Hackner

Vielen Dank für die Info-Jungs, ich würde etwas hinzufügen, um die Lesbarkeit der diff-Ergebnisse zu verbessern. Wenn Sie verwendet haben: .__ > svn_diff_filename.txt

Sie können Folgendes verwenden: Findstr "Index:" C:\Pfad\svn_diff_filename.txt> svn_diff_file_list.txt

Dadurch erhalten Sie eine lesbare Liste von Dateien, die Unterschiede aufweisen. 

1
Kra.

Hier ist ein Beitrag von Murray Cumming , der den nicht offensichtlichen Prozess beschreibt:

  • Entdecken Sie die Versionsnummern: Sie müssen die Versionsnummern der neuesten Versionen in den einzelnen Niederlassungen kennen. Anscheinend ist svn log der einzige Weg, dies zu tun.
  • cd in eines der Verzweigungsverzeichnisse, z. B. trunk.
  • Geben Sie die Revisionsnummern für den Befehl svn diff ein: svn diff -r123:145
0
Stef

Um zwischen zwei Versionen eines Zweiges zu unterscheiden:

svn diff -r rLATEST:rOLD

Verwenden Sie svn log, um die verschiedenen Versionen zu erhalten. Verwendung kann die Anzahl der Revisionen im Protokoll mit svn log -l 5 beschränken. Es werden nur die letzten 5 Versionen angezeigt.

0
arush436