Ma structure SVN actuelle:
Path: .
URL: svn://someaddress.com.tr/project
Repository Root: svn://someaddress.com.tr
Repository UUID: -------------------------------------
Revision: 10297
Node Kind: directory
Schedule: normal
Last Changed Author: ----
Last Changed Rev: 9812
Last Changed Date: 2010-12-20 17:38:48 +0100 (Mon, 20 Dec 2010)
Mais notre projet (d'où le service SVN) fonctionnera au sub.someaddress.com.tr
lieu de someaddress.com.tr
(someaddress.com.tr sera bientôt redirigé vers un autre endroit).
Puisqu'il s'agit du serveur de développement, je ne pouvais pas savoir quoi faire. Dois-je utiliser svn switch
ou svn switch --relocate
? Dois- je également changer de racine svn someaddress.com.tr ou la branche de projet someaddress.com.tr/project ?
la source
svn switch --relocate OLD NEW
switch
commande, toute la documentation que j'ai trouvée en ligne concerne les versions plus récentes.La saisie de l'URL avant et après peut vous donner une certaine tranquillité d'esprit:
Et vérifier votre version (pour être> 1.7) pour vous assurer,
svn relocate
est la bonne chose à utiliser:Enfin, en ajoutant à ce qui précède, si le changement d'URL de votre référentiel implique également un changement de protocole, vous devrez peut-être indiquer l' url avant et après ( voir également ici )
Le tout en une seule ligne bien sûr, ensuite, ressentez le bon sentiment que tout s'est bien passé:
Si vous en avez envie, un peu plus d'assurance, la nouvelle URL svn repo est connectée et fonctionne:
la source
Dans mon cas, la
svn relocate
commande (ainsi quesvn switch --relocate
) a échoué pour une raison quelconque (peut-être que le dépôt n'a pas été déplacé correctement, ou autre chose). J'ai fait face à cette erreur:Je ne voulais pas retélécharger tout le référentiel, j'ai donc trouvé une solution de contournement. Cela a fonctionné dans mon cas, mais en général, je peux imaginer que beaucoup de choses peuvent se briser (alors sauvegardez votre copie de travail ou soyez prêt à revérifier l'ensemble du dépôt si quelque chose ne va pas).
L'adresse du dépôt et son UUID sont enregistrés dans le
.svn/wc.db
fichier de base de données SQLite dans votre copie de travail. Ouvrez simplement la base de données (par exemple dans SQLite Browser), parcourez la table REPOSITORY et remplacez les valeurs de colonneroot
etuuid
par les nouvelles. Vous pouvez trouver l'UUID du nouveau repo en émettantsvn info NEW_SERVER
.Encore une fois, considérez cela comme une méthode de dernier recours.
la source
Si vous voulez vous engager dans un nouveau repo vide, vous pouvez extraire le nouveau repo vide et vous engager dans un nouveau repo distant.
chekout un nouveau Repo vide ne supprimera pas vos fichiers locaux.
essayez ceci: par exemple, URL du dépôt distant: https://example.com/SVNTest
cd [YOUR PROJECT PATH] rm -rf .svn svn co https://example.com/SVNTest ../[YOUR PROJECT DIR NAME] svn add ./* svn ci -m"changed repo url"
la source