Je ne peux pas faire de commit SVN. J'obtiens cette erreur:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
Comment y remédier?
Je ne peux pas faire de commit SVN. J'obtiens cette erreur:
org.apache.subversion.javahl.ClientException: The working copy needs to be upgraded
svn: Working copy 'C:\.... is too old (format 10, created by Subversion 1.6)
Comment y remédier?
Réponses:
Vous devez mettre à jour votre client subversion vers au moins 1.7.
Avec le client de ligne de commande, vous devez mettre à niveau manuellement votre format de copie de travail en exécutant la commande svn upgrade
:
Mise à niveau de la copie de travail
Subversion 1.7 introduit des changements substantiels dans le format de la copie de travail. Dans les versions précédentes de Subversion, Subversion mettait automatiquement à jour la copie de travail au nouveau format lorsqu'une opération d'écriture était effectuée. Cependant, Subversion 1.7 en fera une étape manuelle. Avant d'utiliser Subversion 1.7 avec leurs copies de travail, les utilisateurs devront exécuter une nouvelle commande
svn upgrade
pour mettre à jour les métadonnées au nouveau format. Cette commande peut prendre un certain temps, et pour certains utilisateurs, il peut être plus pratique de simplement récupérer une nouvelle copie de travail.
- Notes de mise à jour de Subversion 1.7
TortoiseSVN effectuera la mise à niveau de la copie de travail avec la prochaine opération d'écriture:
Mise à niveau de la copie de travail
Subversion 1.7 introduit des changements substantiels dans le format de la copie de travail. Dans les versions précédentes, Subversion mettait automatiquement à jour la copie de travail dans le nouveau format lorsqu'une opération d'écriture était effectuée. Cependant, Subversion 1.7 en fera une étape manuelle.
Avant de pouvoir utiliser une copie de travail existante avec TortoiseSVN 1.7, vous devez d'abord mettre à jour le format. Si vous cliquez avec le bouton droit sur une ancienne copie de travail, TortoiseSVN ne vous montre qu'une seule commande dans le menu contextuel: Mettre à niveau la copie de travail.
- Notes de mise à jour de TortoiseSVN 1.7
svn
installé? ( sudo apt-get install svn
)
upgrade
commande. Ubuntu 12.04 n'installerait pas 1.7 sans ajouter un nouveau ppa. askubuntu.com/questions/65468/…
depuis eclipse, vous pouvez sélectionner sur le projet, clic droit-> équipe-> mise à niveau
Sur MacOS:
mise à niveau svn
Si vous venez de mettre à niveau vers SVN 1.7 sur votre machine (comme je viens de le faire) et que vous avez beaucoup de projets dans votre espace de travail Eclipse qui doivent être mis à niveau, vous pouvez effectuer les opérations suivantes dans une fenêtre de terminal sur les systèmes Unix-baesd:
cd [eclipse/workspace] # <- you supply the actual path here
for file in `find . -depth 2 -name "*.svn"`; do svn upgrade `dirname $file` ; done;
Après avoir cherché un peu sur Google, j'ai trouvé ce qui semble être l'équivalent pour les utilisateurs de Windows:
http://www.rqna.net/qna/mnrmqn-how-to-find-all-svn-working-copies-on-win-xp.html
Voir la réponse d'Alexey Shcherbak à mi-chemin de la page.
Ce problème est dû à ce que vous essayez de compiler le projet qui contient les fichiers de OLder SVN que vous utilisez actuellement.
Vous avez deux solutions pour résoudre ce problème
Vous pouvez également recevoir des messages étranges sur la nécessité de mettre à niveau votre copie de travail lorsque d'autres copies de travail sont imbriquées dans la vôtre. J'ai eu ce problème avec un projet Symphony où certains dossiers de framework sont une copie de travail, qui, je suppose, n'ont pas été nettoyés correctement avant leur publication.
Dans ce cas, effectuez simplement une recherche de fichier .svn
et supprimez les .svn
dossiers dont vous ne voulez pas (ne supprimez pas le vôtre à la racine bien sûr).
Après la mise à jour vers la dernière version de Tortoise-SVN, je devais d'abord faire une «mise à jour» (par opposition à une «mise à jour»!).
Si vous obtenez cette erreur de Netbeans (7.2+), cela signifie que votre version installée séparément de Subversion est supérieure à la version de netbeans. Dans mon cas, Netbeans (v7.3.1) avait SVN v1.7 et je venais de mettre à niveau mon SVN vers la v1.8.
Si vous regardez Tools > Options > Miscellaneous (tab) > Versioning (tab) > Subversion (pane)
, définissez le client préféré = CLI , vous pouvez alors définir le chemin du SVN installé qui était pour moi C:\Program Files\TortoiseSVN\bin
.
Pour en savoir plus, consultez la FAQ des clients Netbeans Subversion .
Vous pouvez passer à Subversion 1.7. Pour mettre à jour vers Subversion 1.7, vous devez lancer un projet existant dans Xcode 5 ou supérieur. Cela entraînera un avertissement ' The working copy ProjectName should be upgraded to Subversion 1.7
' (illustré dans la capture d'écran ci-dessous).
Vous devez sélectionner le Upgrade
bouton ' ' pour passer à Subversion 1.7. Cela prendra un peu de temps.
Si vous utilisez un terminal, vous pouvez mettre à niveau vers Subversion 1.7 en exécutant la commande ci-dessous dans le répertoire de votre projet: svn upgrade
Notez qu'une fois que vous avez upgraded to Subversion 1.7 you cannot go back to Subversion 1.6.
svn upgrade