2010-10-21 7 views
7

notre serveur svn a un tronc appelé Dev et sarments vivent danscomment utiliser des branches imbriquées par git-svn

 
/Branches/Release/1.0/ 
       /2.0/ 
       /2.3.4/ 

i cloné avec quelque chose comme git svn clone -T Dev ... -b Branches ...
quand je lance git branch 2.1 remotes/Release/2.1 je reçois:
fatal: Not a valid object name: 'remotes/Release/2.1'.

  • Comment faire référence à la branche distante?
  • Ai-je besoin de recloner avec différents arguments?
+0

Je pense que vous êtes SOL bud:/Vous avez importé une branche: Release avec des dossiers dedans. – Aren

+0

Comment devrais-je résoudre ce problème la prochaine fois que je clonerai? –

+0

Possible dupliquer à http://stackoverflow.com/questions/258590/how-do-i-import-svn-branches-rooted-in-different-directories-into-git-using-git – fmuecke

Répondre

11

Comme mentionné dans « How do I import svn branches rooted in different directories into git using git-svn? », vous devez saisir toutes les branches imbriquées lors de l'importation initiale:

[svn-remote "svn"] 
    url = svn://svnserver/repo 
    fetch = trunk:refs/remotes/trunk 
    branches = branches/*/*:refs/remotes/* 
    tags = tags/*:refs/remotes/tags/* 

qui est également décrit dans this thread.
Pour une mise en page de branche SVN encore plus complexe (comme branches within trunk!), une modification du repo SVN pourrait être en ordre avant de mettre en place une intégration de git-svn.

Depuis la version 1.6, "1.6.x offre un clonage profond de sorte que plusieurs caractères génériques peuvent être utilisés avec l'option --branches", comme mentionné dans "Cloning a Non-Standard Svn Repository with Git-Svn".

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