2009-05-08 6 views
20

Voici ce que j'ai fait, j'ai installé svnserve en tant que service et je l'ai démarré avec la commande net start svn service. J'ai tapé svn ls svn: // localhost pour tester le service mais il a renvoyé l'erreur comme indiqué dans le titre de ce post.Erreur SVN: format fs attendu entre '1' et '3'; format trouvé '4'

je suis entré dans svn --version et svnserve --version sur mon ordinateur pour trouver les numéros de version et le client et la version du serveur est la même, la version 1.5.6. Je suppose que l'erreur apparaît en raison de différentes versions du serveur et du client.

Lorsque je démarre le serveur en utilisant la commande svnserve --daemon --root dans cmd, l'erreur apparaît toujours.

Pourquoi apparaît l'erreur? Merci

Répondre

13

Quel outil Subverson avez-vous utilisé pour créer le référentiel? TortoiseSVN? Votre TortoiseSVN peut être plus récente, une version 1.6.x, puis votre client de ligne de commande 1.5 et svnserve, donc svnserve 1.5.x ne peut pas servir de référentiel 1.6.x.

Dans mon référentiel fsfs créé avec svnadmin 1.6.1, le fichier db/format contient

$ cat repos/db/format 
4 
layout sharded 1000 
+0

J'ai créé le référentiel en utilisant la ligne de commande, et mon TortoiseSVN est la version 1.6. Eh bien, je vais juste mettre à jour mon installation de Subversion à 1.6 alors? – Jarvis

+0

J'ai installé ma Subversion en extrayant des binaires. Pour le désinstaller, est-ce que je supprime simplement les dossiers où je l'ai extrait? Je vais installer Collabnet – Jarvis

1

J'ai installé (le Collabnet installer des) SVN 1.5.5 et il exécutait très bien avec TortoiseSVN 1.6.1 . Après la mise à jour de SVN vers la version 1.6.2, j'obtiens la même erreur (format fs attendu entre '1' et '3', format trouvé '4') lorsque j'essaie d'y accéder via Trac. Cela donne de la crédibilité à la réponse de Blair. Je vais vous faire savoir comment je le fais fonctionner à nouveau.

Mise à jour: La réponse de Blair a fonctionné pour moi aussi: le message dit qu'une ancienne version de SVN tente d'accéder au dépôt, alors trouvez-le et supprimez-le. Les détails pour moi étaient que l'erreur ne s'est produite que lorsque j'ai utilisé Trac, donc j'ai réinstallé Trac sur Windows (http://trac.edgewall.org/wiki/TracOnWindows) avec le dernier programme d'installation que j'ai pu trouver (svn-python-1.6.1.win32-py2.5.exe) et supprimé les anciens oeufs du dossier Python site-packages. Après un redémarrage et une resynchronisation, j'étais à nouveau opérationnel.

2

supprimer mon ancien référentiel et créer une nouvelle en ligne de commande -> svnadmin créer C: \ SVNRéférentiel

* ancien référentiel a été créé par un clic droit sur le dossier et cliquez sur « Créer un référentiel ici »

0

Assurez-vous que vous utilisez svnadmin correct. Par exemple, si vous avez installé VisualSVN, vous devrez utiliser le svnadmin situé dans le dossier bin du répertoire d'installation. J'avais installé la version en ligne de commande de SVN ... et quand j'ai utilisé cette version de l'outil svnadmin, j'ai eu la même erreur.

+0

C'est exactement le problème que j'avais. Merci. –

0

Merci, Joe. J'ai installé le serveur CollabNet SVN et VisualSVN et je recevais des erreurs jusqu'à ce que je m'assure que j'utilisais la version de svnadmin fournie avec VisualSVN (que j'avais utilisée pour créer les dépôts).

7

j'ai le même problème, mais je devais le résoudre avec une approche différente

Le problème est principalement le fichier db/format où il attend un « 2 » meilleure façon de vérifier est de Ope le fichier

$ vi db/format 

Si vous obtenez ce

4 
layout sharded 1000 

Ensuite, vous devez les changer pour dire

2 

Il est préférable de vous également vérifier le fichier en cours

$ vi db/current 

Il vous obtenez seulement ce (par exemple 0 signifiant numéro de reviosion 0)

0 

Ensuite, vous devez les changer pour dire simplement (par exemple 0 sens numéro de révision append "nx" et aussi "2")

0 nx 2 

Enfin Vérifiez également si votre répertoire la structure pour le régime moteur et revprops est ou fragmentées ressemble à quelque chose comme ça

db/revs/0/0 

changement à une structure non dossier

db/revs/0 

Remarque: le fichier de révision (par ex. 0) est juste à l'intérieur du répertoire tours, plus un autre dossier devrait être là

va de même avec revprops changement

db/revprops/0/0 

à

db/revprops/0 
1

La dernière version de Zend Studio (8. x) a un outil SVN qui donne la même erreur à propos de trouver le format 4, mais attend le format 1-3. J'avais créé mon dépôt en utilisant CollabNet SVN (il y a environ un an) et je n'ai pas pu ouvrir le dépôt depuis Zend Studio.

Je pense que la meilleure solution (du moins pour mon cas où je veux travailler avec Zend Studio et ne pas me battre avec) est de recréer votre dépôt avec l'ancienne version de SVN. L'URL de SVN 1.3 pour Windows est:

http://subversion.tigris.org/files/documents/15/32856/svn-1.3.2-setup.exe

Après avoir installé cela, assurez-vous que vous exécutez le svnadmin.exe et svn.exe dans la version nouvellement installée répertoire 1.3 dans le cas où vous avez déjà installé CollabNet SVN (qui a un répertoire d'installation par défaut de c:/csvn).

0

J'ai été en mesure de résoudre ce problème en mettant à jour Subversion sur le serveur. J'ai également fait l'ajustement sur le fichier db. Ensuite, j'ai poussé toute sauvegarde sur le serveur comme un écrasement. J'ai effectivement (sur Windows) fait un checkout localement, puis les fichiers qui ont été générés dans la création de ce repo, j'ai édité la base de données, puis saisi tous les fichiers et les poussé jusqu'à SVN sur le serveur.

Cela semblait avoir fait l'affaire.

0

bien j'ai aussi fait face au même problème. il suffit d'ouvrir votre dossier svn remote que vous avez créé. dans votre dossier db vous avez un fichier de format. il suffit de remplacer le no. avec 1. si elle ne fonctionne pas essayer 2 et 3.

0

Si vous utilisez le serveur VisualSVN, Assurez-vous que votre commande est similaire comme ci-dessous

Exemple de commande: C : \ Program Files \ VisualSVN serveur \ bin> svnadmin dump c: \ repo> c: \ backup \ svnbacku p.dump