2010-11-27 6 views
1

Je souhaite importer seulement 1 branche de mon dépôt svn en tant que dépôt git. Je veux donc que le contenu de cette branche devienne le maître. Je ne veux rien d'autre dans le dépôt. Je ne veux pas non plus pouvoir m'engager dans le svn repo original. En fait, je ne veux pas que quelque chose arrive à mon svn repo.git-svn importer uniquement la branche

Exemple:

branches 
    branch1 
    branch2 
    some-branch 
    project 

Je veux donc le contenu du dossier project pour devenir ma branche principale. Comment puis je faire ça?

Merci.

EDIT

On dirait qu'il ya des branches qui ont été fusionnées dans ma branche, et git-svn ne peut pas trouver l'histoire parce qu'elle regarde dans

branches/une branche/projet/branches/Branch1

il pense que ma branche distante est la racine. Comment puis-je le réparer?

Répondre

2

1) Définir la nouvelle branche dans .git/config:

[svn-remote "release-branch"] 
     url = svn+ssh://[email protected]/source/branches/mono-2-2/mcs 
     fetch = :refs/remotes/git-svn-release-branch 

2) Importer la branche SVN. SVN_BRANCHED_REVISION est la révision lorsque la branche s'est produite dans SVN.

[~]$ git svn fetch release-branch -r SVN_BRANCHED_REVISION 

3) Accrocher une branche Git locale à la branche à distance:

[~]$ git branch --track release git-svn-release-branch 

5) Commander et mettre à jour

[~]$ git checkout release 
[~]$ git svn rebase 
+0

Merci. Mais maintenant, il dit qu'il ne pouvait pas trouver revmap pour les autres branches qui ont été réintégrées dans cette branche. car il pense que cette branche est la racine :( –

Questions connexes