2010-01-11 7 views
5

Suite à l'avis de this tutorial, j'ai cloné un référentiel svn qui n'avait pas la disposition standard.Comment réinitialiser un dépôt git-svn

git-svn clone -s http://example.com/my_subversion_repo local_dir 

Le -s est là pour signifier que mon dépôt Subversion a une mise en page standard (/ tronc, branches /, et les étiquettes /.) Si votre dépôt ne dispose pas d'une mise en page standard, vous pouvez laisser ça va.

être complètement nouveau à git, je ne savais pas que laisser simplement désactiver l'option -s sans additionnel à la --trunk, --branches et --tags options ne me laisse pas seulement avec un dépôt, mais sans agence aussi avec la tête entière du référentiel vérifié (au lieu de seulement la tête du coffre).

Existe-t-il un moyen de "réparer" mon référentiel git local pour qu'il se comporte comme si je l'avais créé avec la connaissance de la disposition du référentiel svn? Puis-je utiliser git-svn init pour réinitialiser mon dépôt? En raison de la longueur du temps, j'espère éviter d'avoir à reclone à partir de zéro.

Répondre

2

Ceci est similaire à SO question "Cloning a Non-Standard Svn Repository with Git-Svn", et je ne suis pas sûr qu'il existe un processus pour réparer le repo Git après ce clone initial.

Le clone profond est le moyen officiel:

git svn clone https://svn.myrepos.com/myproject web-self-serve 
    --trunk=trunk --branches=branches/*/* 

Mais j'aime l'encapsulation fourni par svn2git.

Malheureusement, ces deux solutions nécessitent un re-clonage à partir de zéro ...

Questions connexes