SVN Switch Relocate - n'est pas la racine du dépôt

j'essaie de déplacer un dossier de copie de travail de son ancien serveur svn dédié vers un nouveau serveur svn où il est contenu dans un sous-dossier. En utilisant la commande relocate suivante:

svn switch --relocate https://oldserver/svn/repos https://newserver/some/directory 

j'obtiens:

svn: 'https://newserver/some/directory ' is not the root of the repository

ce qui est correct ..... mais, euh, comment je déplace l'endroit malgré tout?

20
demandé sur Jon Hadley 2010-01-28 17:43:05

4 réponses

autant que je sache, vous ne pouvez pas utiliser svn switch (avec ou sans --relocate) pour passer à un nouveau dépôt. Pensez - y de cette façon: la révision principale de votre nouveau dépôt est x, la révision de votre ancien dépôt est y, alors que fait SVN avec la révision de base de la copie de travail?

svn help switch dit que --relocate est utilisé pour:

réécrire les métadonnées de L'URL de la copie de travail pour refléter un changement syntaxique. ceci est utilisé lorsque L'URL racine du dépôt des modifications (comme un changement de schéma ou de nom d'hôte) mais votre copie de travail reflète toujours le même répertoire dans le même référentiel.

comme ce n'est pas le cas, je crains que vous aurez à effectuer une nouvelle caisse.

13
répondu Eli Acherkan 2011-04-21 10:02:11

j'ai essayé la même opération, dans ce cas, j'ai eu une copie à l'aide de svnsync dans un fichier: url et déplacé à l'aide mv /home/moi/sync/therepo /home/moi/sync/repos/therepo.

la raison: j'ai plusieurs scripts d'aide dans le catalogue sync qui perturbent la vue des repos.

svn switch --déménager travaillé pour la plupart, à l'exception des éléments externes qui gardent de se plaindre.

la solution a été brutale: j'ai supprimé (rm-rf) les répertoires contenant les fichiers offensants et couru svn update réextraire les externes.

au moins de cette façon je n'ai pas eu à refaire la grande caisse.

aussi, maintenant je peux écrire des instructions pour mes collègues quand nous déplaçons le serveur svn vers une nouvelle machine plus tard.

2
répondu Torbjörn Axelsson 2011-04-21 09:56:11

Ce qui peut arriver, c'est que vous faites le déplacer sur un enfant de la racine.

essayez de faire un déplacement sur le dossier racine. Tous les dossiers enfants seront automatiquement déplacés aussi.

1
répondu Breiz 2014-02-10 16:46:27

je suppose que vous avez déjà migré le dépôt via svnadmin dump/svnadmin load dans ce cas, vous pouvez essayer:svn switch --relocate https://newserver/some/directory si vous obtenez la même erreur, vous pourriez en fait avoir à faire un nouveau svn co. Je ne me souviens pas avoir jamais rencontré cette erreur, mais alors tous mes repos utiliser une structure imbriquée comme celle que vous vous déplacez pour son possible je n'ai jamais eu à traiter avec elle : -)

0
répondu prodigitalson 2010-01-28 14:52:57