Checkout remote branch en utilisant git svn

J’ai vérifié un repository svn en utilisant git svn. Maintenant, je dois vérifier une des twigs et la suivre. Quel est le meilleur moyen de le faire?

Disposition standard Subversion

Créez un clone git qui inclut votre jonction, vos tags et vos twigs Subversion avec

  git svn clone http://svn.example.com/project -T trunk -b twigs -t tags 

L’option --stdlayout est un bon raccourci si votre repository Subversion utilise la structure typique:

  git svn clone http://svn.example.com/project --stdlayout 

Faites que votre repository git ignore tout ce que fait le repository subversion:

  git svn show-ignore >> .git / info / exclude 

Vous devriez maintenant pouvoir voir toutes les twigs Subversion du côté git:

  twig git -r 

Dites que le nom de la twig dans Subversion est waldo . Du côté des git, vous courriez

  git checkout -b waldo-svn remotes / waldo 

Le suffixe -svn évite les avertissements du formulaire

  avertissement: refname 'waldo' est ambigu. 

Pour mettre à jour la twig git waldo-svn , lancez

  checkout waldo-svn
 git svn rebase 

À partir d’une caisse uniquement

Pour append une twig Subversion à un clone de ligne de réseau uniquement, modifiez le .git/config de votre repository git afin qu’il contienne

  [svn-remote "svn-mybranch"]
         url = http://svn.example.com/project/twigs/mybranch
         fetch =: refs / remotes / mybranch 

Vous devrez développer l’habitude de courir

  git svn fetch --fetch-all 

pour mettre à jour tout ce que git svn pense être des télécommandes séparées. À ce stade, vous pouvez créer et suivre les twigs comme ci-dessus. Par exemple, pour créer une twig git correspondant à mybranch, exécutez

  git checkout -b mybranch-svn remotes / mybranch 

Pour les twigs à partir desquelles vous avez l’intention de git svn dcommit , gardez leurs historiques linéaires!


Informations complémentaires

Vous pourriez également être intéressé par une réponse à une question connexe .