Question

Je suis en train d'effectuer une migration de cvs svn sur mon notre nouveau serveur Xserve qui exécute OS X Server. Il y a un conflit connu entre les bibliothèques cvs2svn et DBM qui sont pré-installé avec OS X. L'erreur est:

  

ERREUR: cvs2svn utilise le package anydbm, qui dépend de niveau inférieur bibliothèques DBM. Votre système a DBM, avec lequel cvs2svn est connu pour avoir des problèmes. Pour utiliser cvs2svn, vous devez installer une bibliothèque DBM Python autre que dumbdbm ou DBM. Voir http://python.org/doc/current/lib/module-anydbm .html pour plus d'informations.

J'ai suivi toutes les étapes prescrites dans le cvs2svn FAQ mais l'erreur persiste . Est-ce que quelqu'un sait d'une autre façon d'accomplir cette tâche, ou un autre site qui offrent une autre solution à ce problème apparemment commun?

Était-ce utile?

La solution

Depuis CVS et les dépôts Subversion sont en fait que des collections de fichiers, une façon de contourner ce problème est de copier votre référentiel CVS sur une machine où cvs2svn peut fonctionner avec succès, l'exécuter pour convertir Subversion, puis copier le nouveau dépôt sur votre serveur. L'avantage de cette méthode est que vous ne serez pas courir le risque de vous embêter accidentellement la configuration de votre serveur tout en faisant cette étape de conversion.

Autres conseils

cvs2svn lui-même est disponible en MacPorts donc, au lieu de seulement les bibliothèques DBM, vous pouvez installer cvs2svn en utilisant MacPorts:

port install cvs2svn

Si pas déjà installé, il installera également la version MacPorts de python2.5 et d'autres dépendances. Il n'y a pas de mal à cela, mais cela prendra un peu de temps et un peu plus d'espace. L'avantage est que vous devriez avoir un travail, version prise en charge sans avoir à combattre d'autres problèmes de dépendance.

Vous pouvez toujours installer manuellement d'autres bibliothèques DBM en utilisant par exemple MacPorts.

Si vous avez déjà installé la subversion, avez-vous assurer que le chemin se trouve juste dans vos variables système?

J'ai eu le même problème sur le mien et je fini par avoir à ajouter les variables Python_Home et le chemin à utiliser

C: \ Pyton27 \

semble peut-être un peu fou ou surpuissant, mais pensez à utiliser « git » (par exemple version MacPorts). Il clone l'histoire complète CVS et il pousse dans un dépôt Subversion. Les étapes suivantes devraient faire le travail (regardez les manuels, l'aide git'cmd' de la commande):

    port install git-core cvs cvsps svn (if necessary)

    create directory for git and init cvs git repo (let´s say ´cd ~/cvsgit´):
    git cvsimport -v -d CVSROOT module

    create new subversion repository (svnadmin) with trunk, tags, branches
    now import this new repository to a git repository:
    git svn clone -s file:///path/to/svnrepo  (without trunk, tags, branches)
    this creates a svnrepo directory; rename and move it to e.g. ~/svngit

    now add the cvs git repo to svn repo:
    cd ~/svngit
    git remote add cvsrepo ~/cvsgit
    git fetch cvsrepo

    now merge the cvs master branch to the local svn master branch:
    git merge remotes/cvsrepo/master

    finally commit to (real) svn repository:
    git svn dcommit

Vous avez terminé!

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top