web-dev-qa-db-de.com

Wie benenne ich einen SVN-Zweig um und aktualisiere Referenzen in einer vorhandenen Sandbox?

Ich musste einen SVN-Zweig umbenennen, also habe ich Folgendes getan:

$ svn move https: // server/repos/myrepo/niederlassungen/oldbranch\
 https: // server/repos/myrepo/niederlassungen/newbranch

So weit, so gut - die Filiale wurde umbenannt.

Das Problem ist, dass vorhandene Sandboxen aus diesem Zweig ausgecheckt wurden und beim Aktualisieren die folgende Fehlermeldung angezeigt wird:

$ svn update 
 svn: Zielpfad '/ branches/oldbranch' existiert nicht

Ein ziemlich selbsterklärender Fehler. Nach einer kurzen Suche dachte ich, ich hätte die Lösung gefunden: Verschieben der SVN-Arbeitskopie nach dem Umbenennen des Zweigs

Das Problem ist, dass ich beim Versuch, diesen Befehl auszuführen, einen weiteren Fehler erhalte:

$ svn switch --relocate https: // server/repos/myrepo/niederlassungen/oldbranch\
 https: // server/repos/myrepo/niederlassungen/newbranch 
 svn: Relocate kann nur das ändern Repository-Teil einer URL

Soweit ich sehen kann, benutze ich das --relocate befehle genauso wie Sander Rijken. Irgendwelche Ideen, warum ich diesen Fehler bekomme?

44
Lee Netherton

Mach einfach

svn switch https://server/repos/myrepo/branches/newbranch

aus Ihrer Arbeitskopie.

52
khmarbaise

Um den relativen Pfad zu ändern, müssen Sie muss verwenden reinsvn switch (Und trotzdem ist switch --relocate Veraltet), wie in svn help switch für die 1. Form

switch URL[@PEGREV] [PATH] Aktualisieren Sie die Arbeitskopie, um eine neue URL im Repository zu spiegeln.

 This behavior is similar to 'svn update', and is the way to
 move a working copy to a branch or tag within the same repository.

Dh in der Wurzel von WC für oldbranch, die jetzt newbranch ist, müssen Sie verwenden

svn switch ^/branches/newbranch

3
Lazy Badger

Wenn Sie einfach eine SVN-Verzweigung in Eclipse umbenennen wollten, wäre es am einfachsten gewesen, in die SVN Repository Exploring Perspective zu gehen und dann mit der rechten Maustaste auf Ihre Verzweigung zu klicken -> Refactor-> Rename

3
Leopold Gault