Ich habe ein besonderes Problem mit SVN merge
. Ich möchte von einem Entwicklungszweig zu einem Stamm zusammengeführt werden. Wir haben mehrere Entwicklerzweige gleichzeitig vom Stamm abgeschnitten.
Ich füge einen dieser Zweige mit diesem Befehl zum Trunk zusammen:
svn merge trunk branch_1
Ich sehe Änderungen, die nicht Teil dieses Zweigs sind und in Trunk zusammengeführt werden. Was mache ich falsch ?
SVN-Version:
Subversion-Befehlszeilenclient, Version 1.6.16-SlikSvn-tag-1.6.16@1076804-WIN32.
svn
version-control
merge
Vanchinathan Chandrasekaran
quelle
quelle
Antworten:
Ihre
svn merge
Syntax ist falsch.Sie möchten eine Arbeitskopie von auschecken
trunk
und dann die folgendesvn merge --reintegrate
Option verwenden:Weitere Informationen finden Sie im SVN-Buchkapitel zum Zusammenführen .
Beachten Sie, dass dies zum Zeitpunkt des Schreibens die richtige Antwort war (und akzeptiert wurde), aber die Dinge haben sich weiterentwickelt. Siehe die Antwort von topek und http://subversion.apache.org/docs/release-notes/1.8.html#auto-reintegrate
quelle
--reintegrate
ist in der Tat nicht obligatorisch, wird aber in diesem Fall wirklich empfohlen. Ich habe versucht, darauf zu verzichten,--reintegrate
und bin zu Hunderten von Konflikten gekommen. Mit--reintegrate
, keine Konflikte und alles war gut!--reintegrate
Option ist einfach und effektiv, ABER es muss beachtet werden, dass "Sobald eine--reintegrate
Zusammenführung von Zweig zu Stamm durchgeführt wurde, der Zweig nicht mehr für weitere Arbeiten verwendet werden kann. Er kann neue Stammänderungen nicht korrekt absorbieren und kann auch nicht ordnungsgemäß wieder integriert werden." wieder zu Kofferraum. " wie in dem Buch erklärt, das Sie verlinkt haben.Wenn Ihr Arbeitsverzeichnis auf den Trunk verweist, sollten Sie in der Lage sein, Ihren Zweig zusammenzuführen mit:
Stellen Sie sicher, dass Sie diesen Befehl im Stammverzeichnis Ihres Trunks ausgeben
quelle
Führen Sie ein SVN-Update im Trunk durch und notieren Sie sich die Versionsnummer.
Aus dem Kofferraum:
Sie können überprüfen, wo der Zweig aus dem Stamm herausgeschnitten wurde, indem Sie ein SVN-Protokoll erstellen
quelle
svn
(z. B. der von OP verwendeten).svn://path/to/branch/branchName
nur die Änderungen aus diesem Zweig und nicht aus anderen Zweigen abgerufen werden sollen. Wenn ja, sind wir in Gefahr!Die Syntax ist falsch, es sollte stattdessen sein
quelle