2010-02-25 7 views
2

Existe-t-il un moyen de créer une branche locale ou de modifier une branche locale existante, de manière à ce qu'elle ne puisse pas être transférée au svn repo? Voici une description du scénario.git-svn guestion sur la création de branches locales

git checkout -b local.farBranch remotes/farBranch 
git checkout -b patched.local.farBranch 
git merge local.patches 

<work on patched branch && test> 
<do not commit onto patched.local.farBranch> 

git checkout local.farBranch 
git commit -am "some changes" 

git rebase local.farBranch patched.local.farBranch 

<another work test cycle> 

git checkout local.farBranch 
git commit -am "last changes" 

git svn dcommit 

Maintenant, je ne veux plus jamais dcommit patched.local.farBranch (qui est suivi Distants/farBranch) parce que cela mettre mes patches locaux dans le dépôt SVN. Ce n'est pas un problème fatal mais c'est une douleur dans le keester parce que le patch doit être retiré quand SVN farBranch est éventuellement fusionné sur le tronc. Donc, ce que je cherche est un moyen d'empêcher cela

git checkout patched.local.farBranch 
git svn dcommit       <<== ERROR 

git checkout local.farBranch 
git svn dcommit       <<== OK 

Répondre

0

Je ne pense pas. Je cherchais récemment git-svn pour d'autres choses et il obtient cette information en cherchant simplement le message de journal le plus récent avec l'élément git-svn-id. (C'est pourquoi Git Merge peut causer des problèmes).

Vous pourriez cloner le repo git-svn, ce qui se traduira par un repo git auquel vous ne pouvez pas vous engager, mais qui présente aussi de gros inconvénients. Je ne le recommanderais pas vraiment, bien que cela puisse fonctionner pour vous.

J'aimerais aussi que si c'était le cas, peut-être le mainteneur de git-svn l'inclurait d'une manière ou d'une autre dans une future version si quelqu'un le lui demandait.

0

Je peux ajouter que git-svn n'est pas bien adapté pour travailler avec différentes branches. Je recommanderais d'utiliser SmartGit à la place. Il propose toujours de pousser dans une branche selon le nom de la branche locale.

Questions connexes