PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SVN mergen



chris@online
27.03.07, 15:42
Hallo,

wir sind mehrere Programmierer, die an der selben Software entwickeln - jeder in seiner lokalen Kopie. Eine davon ist nun initial in svn importiert worden.

Jetzt wollen wir die anderen Kopien ebenfalls in das Repository mergen. Wie machen wir das am Besten?

Vielen Dank und schöne Grüße,
Chris

baumgartner
27.03.07, 15:50
Blöde Ausgangslage!

Ich würde mal versuchen das .svn Verzeichnis in so eine Kopie zu kopieren, dann mit svn add die Files hinzuzufügen und danach ein commit.

EDIT: Oder die neuen Dateien in eine echte Arbeitskopie reinkopieren ;)

chris@online
27.03.07, 15:55
Sowas in der Art hatten wir auch schon probiert. Allerdings wurde dann bei einem Merge lediglich die vorhandene (svn) Version durch die vermeintlich neuere Datei überschrieben und nicht gemergt :/

baumgartner
27.03.07, 16:22
Könntest du das etwas detailierter beschreiben? Entweder du verwechselst da etwas oder ich ;)

Normalerweise sollte SVN das mergen selbst in die Hand nehmen und bei Problemen das diff anlegen. Kann es sein, dass ihr auf dem anderen Rechner ebenfalls versucht ein svn import zu machen und kein svn commit?

chris@online
27.03.07, 16:27
Ne, ein commit führt dazu, daß es überschrieben wird. svn kann ja nicht erkennen, ob ich die ausgecheckte Version verändert habe oder mergen will.

Wir haben zuerst einen "import" einer Version gemacht. Dann die zweite Version per "merge" versucht, zu synchronisieren. Das ging nicht. Dann haben wir die ebenfalls importiert, um einen zweiten Branch zu erhalten. Dann wollten wir die beiden Branches mergen, hat aber ebenfalls nicht zu dem gewünschten Ergebnis geführt - sondern überschrieb die zuerst importierte Version (ist ja auch logisch).

Naja, wir versuchen jetzt, aus unseren Einzelversionen "manuell" ein Master zu erstellen und importieren das dann initial (es sei denn, Du hast noch eine schlaue Idee ;)

Vielen Dank für Deine Hilfe!

baumgartner
27.03.07, 16:53
Ne, ein commit führt dazu, daß es überschrieben wird. svn kann ja nicht erkennen, ob ich die ausgecheckte Version verändert habe oder mergen will.?

Ich würd mal behaupten im .svn-Verzeichnis gibt es immer eine Kopie des echten Originals und mit dem wird ein diff durchgeführt. Sind beide gleich wird svn wohl nicht mit dem bereits eingechecktem File mergen. Du darfst dementsprechend das veränderte File nur über den sichtbaren Teil in der Arbeitskopie drüberkopieren.
Könntest du vielleicht mal eine Befehlsfolge ablassen von dem was du getan hast?


es sei denn, Du hast noch eine schlaue Idee Guter Rat kostet ;)

chris@online
27.03.07, 17:08
Guter Rat kostet ;)

Klar :) Wir probieren es erstmal so - wenn noch Fragen sind, melden wir uns!

Vielen Dank,
Chris

baumgartner
27.03.07, 17:21
Klar :) Wir probieren es erstmal so - wenn noch Fragen sind, melden wir uns!

Vielen Dank,
Chris

Das war eigentlich nur ein Joke... nicht missverstehen!