2010-07-23 8 views
0

Je converti un dépôt svn très grand à un dépôt git avecgit-svn vcs switch: où sont mes branches?

git svn init svn/server/project --no-metadata 
git svn fetch 

Cela a pris la plus grande partie de deux jours pour terminer. Ce repo devrait avoir pas mal de branches mais quand je fais "git branch" je n'ai rien d'autre que le master. Ils sont listés dans le répertoire des branches, mais ne devrais-je pas les voir avec "branche git" aussi?

"git branch -a" affiche uniquement master et distants/git-svn.

Était-ce le commutateur --no-metadata qui l'a fait?

Répondre

3

Lors de l'initialisation du dépôt git vous devez utiliser soit les --trunk, --branches et --tags options ou l'option --stdlayout-git svn init afin de le dire le chemin vers les répertoires aux trunk, branches et tags répertoires dans le dépôt subversion. Pour plus de détails, consultez le manual page for git-svn.

+0

J'ai lu la page de manuel mais je n'en suis toujours pas certain. Donc, "git svn init svn: // serveur/projet --stdlayout" serait la bonne commande pour tout transférer? Ou utiliser les trois paramètres distincts à la place? Je veux juste m'assurer, comme je l'ai dit, qu'il faut environ deux jours pour transférer les données afin que je ne veuille pas le faire une troisième fois ... – Makis

+0

Oui, '--stdlayout' devrait vous donner ce que vous voulez si vous avoir les répertoires 'trunk',' tags' et 'branches' selon la disposition de subversion par défaut. Mais si vous voulez vraiment être sûr que tout fonctionne correctement, essayez de mettre en place un petit test de subversion de test et essayez de le convertir avant d'essayer de convertir le vrai repo. –

+0

Lorsque je vérifie un dépôt SVN avec git, j'utilise la commande "git svn clone svn: // serveur/projet -T trunk -b branches -t tags" pour m'assurer d'avoir tout ce dont j'ai besoin. "--stdlayout" devrait fonctionner de la même manière. – Aurril