it-swarm.com.de

Welcher svn-Befehl listet alle Dateien auf, die in einem Zweig geändert wurden?

In svn habe ich einen Zweig, der beispielsweise bei Revision 22334 erstellt wurde. Dann wurden in dem Zweig Festschreibungen getroffen.

Wie erhalte ich eine Liste aller Dateien, die auf dem Zweig im Vergleich zu den Dateien auf dem Stamm geändert wurden? Ich möchte keine Dateien sehen, die zwischen der Erstellung des Zweigs und "jetzt" auf dem Trunk geändert wurden.

76
Trenton

Das wird es tun, denke ich:

svn diff -r 22334:HEAD --summarize <url of the branch>
82
andy

Sie können auch eine schnelle Liste geänderter Dateien abrufen, wenn Sie nur den Befehl status mit der Option -u verwenden möchten

svn status -u

Hier sehen Sie, um welche Revision es sich bei der Datei in der aktuellen Codebasis handelt, im Vergleich zur letzten Revision im Repository. Ich benutze diff nur, wenn ich tatsächlich Unterschiede in den Dateien selbst sehen möchte.

Es gibt hier ein gutes Tutorial zum Befehl svn, das viele dieser häufigen Szenarien erklärt: SVN-Befehlsreferenz

40
Robert Duchnik

Sie können den folgenden Befehl verwenden:

svn status -q

Laut svnbook :

With --quiet (-q), it prints only summary information about locally modified items.

WARNUNG: Die Ausgabe dieses Befehls zeigt nur Ihre Änderung. Daher empfehle ich, einen svn up, Um die neueste Version der Datei abzurufen, und dann svn status -q, Um die von Ihnen geänderten Dateien abzurufen.

15
maskarih

Dies listet nur geänderte Dateien auf:

svn status -u | grep M
13
hunter

Die Option -u wird einschließlich der Objektdateien angezeigt, wenn diese während der Kompilierung hinzugefügt werden.

Also, um das zu überwinden, können Sie zusätzlich so verwenden.

svn status -u | grep -v '\?' 
2
Binny Jeshan
echo You must invoke st from within branch directory
SvnUrl=`svn info | grep URL | sed 's/URL: //'`
SvnVer=`svn info | grep Revision | sed 's/Revision: //'`
svn diff -r $SvnVer --summarize $SvnUrl
2
Hasski

svn log -q -v zeigt Pfade an und blendet Kommentare aus. Alle Pfade sind eingerückt, sodass Sie nach Zeilen suchen können, die mit Leerzeichen beginnen. Dann an cut und sort weiterleiten, um aufzuräumen:

svn log --stop-on-copy -q -v | grep '^[[:space:]]'| cut -c6- | sort -u

Dadurch werden alle Pfade abgerufen, die seit dem Verzweigungspunkt in der Verzweigung erwähnt wurden. Beachten Sie, dass hier gelöschte und hinzugefügte sowie geänderte Dateien aufgelistet werden. Ich habe dies nur verwendet, um das Zeug zu bekommen, über das ich mir Gedanken machen sollte, einen etwas chaotischen Zweig von einem neuen Entwickler zu überprüfen.

0
Sweavo