Ich habe Änderungen in zahlreichen Dateien von Eclipse in ein SVN-Repository übernommen.
Ich gehe dann zum Website-Verzeichnis auf der Linux-Box, wo ich diese Änderungen vom Repository in das dortige Verzeichnis aktualisieren möchte.
Ich möchte "svn update project100" sagen, wodurch die Verzeichnisse unter "project100" mit all meinen hinzugefügten und geänderten Dateien usw. aktualisiert werden.
Ich möchte jedoch nicht unbedingt Änderungen aktualisieren, die ich nicht vorgenommen habe. Also dachte ich, ich könnte "svn status project100" sagen, aber wenn ich das mache, bekomme ich eine völlig andere Liste von Änderungen, die vorgenommen werden, keine von meinen ist in der Liste, was seltsam ist.
Um sicherzugehen, dass nur meine Änderungen im Webverzeichnis aktualisiert werden, muss ich zu jedem Verzeichnis navigieren, in dem ich weiß, dass eine Änderung vorgenommen wurde, und nur diese Dateien explizit aktualisieren, z. B. "svn update newfile1.php" usw. das ist langweilig.
Kann hier jemand Licht in die Standardarbeitsanweisung bringen, nämlich wie erhalte ich eine genaue Liste aller Änderungen, die vorgenommen werden sollen, bevor ich den Befehl "svn update" ausführe? Ich dachte, es wäre der Befehl "status".
svn status -q -u
... Zeigt nur Aktualisierungsänderungen und lokale Änderungen an, die sich auf Dateien beziehen, die zum Repository gehören. Sie erhalten keine Fragezeichen (?) Von Nicht-Repository-Dateien.Je nachdem, was Sie zwischen Ihrer Arbeitskopie und dem neuesten SVN-Server-Repository wissen möchten, ohne Ihre lokale Arbeitskopie zu aktualisieren, können Sie Folgendes tun:
Wenn Sie wissen möchten, was im SVN-Server-Repository geändert wurde, führen Sie den folgenden Befehl aus:
Wenn Sie wissen möchten, ob dieselbe Datei sowohl in Ihrer lokalen Arbeitskopie als auch im SVN-Server-Repository geändert wurde, führen Sie den folgenden Befehl aus:
Wenn Sie eine Liste der Dateien erhalten möchten, die zwischen einer bestimmten Revision und HEAD geändert wurden, führen Sie den folgenden Befehl aus:
Wenn Sie eine Liste der Dateien erhalten möchten, die zwischen bestimmten Revisionen geändert wurden, führen Sie den folgenden Befehl aus:
Wenn Sie sehen möchten, was aktualisiert wird (ohne tatsächlich zu aktualisieren), führen Sie den folgenden Befehl aus:
Wenn Sie wissen möchten, welcher Inhalt einer bestimmten Datei im SVN-Server-Repository im Vergleich zu Ihrer Arbeitskopie geändert wurde, führen Sie den folgenden Befehl aus:
Wenn Sie wissen möchten, welcher Inhalt aller Dateien im SVN-Server-Repository im Vergleich zu Ihrer Arbeitskopie geändert wurde, führen Sie den folgenden Befehl aus:
quelle
Sie können sehen, was aktualisiert wird (ohne tatsächlich zu aktualisieren), indem Sie Folgendes ausgeben:
Weitere Details hier .
quelle
svn merge --dry-run --revision BASE:HEAD .
how do I ... without doing an update?
a:first, do an update, then ...
:) :) :)Das habe ich gesucht.
svn help
Ich habe zuerst Google überprüft, bin aber für mich durchgekommen :)quelle
Das gleiche aber kürzer kürzer :):
quelle
Sie können 'svn diff' verwenden, um den Unterschied zwischen Ihrer Arbeitskopie und dem Repository festzustellen.
quelle
svn update
Theoretisch könnten Sie alle Ihre Änderungen in einem Zweig vornehmen, den Sie für Ihren eigenen Gebrauch erstellt haben. Sie wären sich dann ziemlich sicher, dass Sie der einzige sind, der sich dazu verpflichtet hat.
Die Entwicklung von IMHO-Funktionen sollte so erfolgen.
Dann könnten Sie diesen Zielcomputer von diesem Zweig anstatt vom Trunk aus aktualisieren.
quelle