2009-04-29 8 views
7

Nous utilisons Subversion pour garder une trace de notre code. Dans le cadre du processus de construction, certains fichiers AssemblyInfo.cs sont temporairement édités par le script de construction, et une fois la compilation terminée, ils sont restaurés (également par le script de génération). Cependant, un de nos développeurs obtenir ce message lorsque le Revert est tentée:Subversion: Obtenir "Le client est trop vieux" même si tous les développeurs utilisent la même version svn

Le client est trop vieux pour travailler avec copie de travail « le chemin ». Vous devez obtenir un client Subversion plus récent, ou déclasser cette copie de travail.

Nous exécutons tous la même version de Subversion (1.5.1). La seule différence entre les configurations de développeur est que l'utilisateur ayant le problème utilise une version plus récente de TortoiseSVN (1.6.0, par opposition à 1.5.x pour les autres), et nous avons utilisé Subversion 1.5.1 tout le temps référentiel a existé.

Avez-vous un indice sur ce que le problème pourrait être?

+0

Partagez-vous la même copie de travail? Son WC devrait heureusement chuter en tant que 1.6 WC avec son client 1.6. – hometoast

Répondre

14

Chaque fois qu'un client subversion touche une copie de travail, la première chose à faire est de mettre à jour silencieusement cette copie de travail vers sa version.

TortoiseSVN l'aura fait, laissant les autres clients de subversion incapables de lire de manière fiable la copie de travail.

Ceci est vrai pour tous les clients Subversion dans toutes les versions (jusqu'à présent). Commandline, Tortoise, sous-clipse, ankh, rapidsvn - tous se comportent de la même manière.

Il existe un script python pour déclasser une copie de travail, ou vous pouvez simplement l'annuler et recommencer avec une nouvelle extraction. Voir le compatibility section of the release notes.

Tortue suit généralement le numéro de version majeur du client de subversion qu'il utilise.

Edit:

Dans votre cas, vous utilisez 2 clients - et la tortue dans le script commandline de construction. Le script de construction ne pourra pas fonctionner tant qu'il n'aura pas été mis à jour avec la dernière version.

Nous avons ce problème nous-mêmes.

+0

Mais dans notre cas, c'est l'inverse; le seul client qui se plaint est celui avec la dernière version. –

+0

est TortoiseSVN 1.6 se plaindre, ou est un autre client SVN exécuté par le même utilisateur avec TortoiseSVN 1.6 se plaindre? –

+0

Ne me dérange pas mon commentaire; penser en arrière. Vous avez parfaitement raison en ce que deux clients sont en usage; à la fois un client de ligne de commande (1.5.1) et celui de Tortoise (1.6.x). Je suis sûr que c'est le problème. –

3

TortoiseSVN 1.6 utilise une version plus récente du client subversion que 1.5. C'est probablement ce qui cause votre erreur.

Une autre possibilité est que le script de construction utilise un client différent.

+0

+1; En général, vérifiez toujours la version utilisée dans vos binaires Subversion réels, tous les outils de support (tels que TortoiseSVN) et tous les plugins dans votre IDE, et assurez-vous que vous pouvez obtenir des versions correspondantes avant de mettre à jour quoi que ce soit – Rob

+0

maintenant). Je pense que l'erreur pourrait être que l'utilisateur a supposé que Tortoise est simplement "envelopper" le client svn installé. –

+0

bon appel sur les différents outils utilisés. Essayer de revenir avec (par exemple) VisualSVN 1.5 ne fonctionnera pas lors de son extraction par Tortoise 1.6+ – hometoast

Questions connexes