194 votes

git-svn : comment créer une nouvelle branche svn via git ?

J’ai un dépôt git qui suit un dépôt svn. J’ai cloné à l’aide de `` .

J’ai créé une nouvelle branche locale via``

Maintenant, je veux cette branche se retrouver dans `` dans le dépôt svn.

Comment puis-je aller à ce sujet ?

(ciselée beaucoup de texte d’enquête. voir historique de la question, si vous vous souciez)

280voto

Jesper Rønn-Jensen Points 15212

Je sais que cette question a été posée tout à l'heure, mais après l'avoir lu, je il pourrait être utile d'ajouter des exemples spécifiques de l'git svn direction de la commande et de le rapporter à un flux de travail typique.

Comme kch répondu, utilisez git svn branch. Voici un exemple complet, (à noter que l' -n pour l'exécution de la sec à tester):

git svn branch -n  -m "Branch for authentication bug" auth_bug

Si tout va bien, le serveur répond avec une réponse comme ceci:

La copie https://scm-server.com/svn/portal/trunk au r8914 à https://scm-server.com/svn/portal/branches/auth_bug...

Et sans l' -n basculer le serveur rajoute sans doute quelque chose comme:

Possible de point de branchement: https://scm-server.com/svn/portal/trunk => https://scm-server.com/portal/branches/auth_bug, 8914

Trouvé direction des parents: (refs/remotes/auth_bug)

d731b1fa028d30d685fe260f5bb912cbf59e1971

Suite parent avec do_switch

Suivie avec succès parents r8915 = 6ed10c57afcec62e9077fbeed74a326eaa4863b8

(refs/remotes/auth_bug)

La meilleure partie de cela, vous pouvez maintenant créer une branche locale en fonction de votre télécommande, direction générale de la sorte:

git checkout -b local/auth_bug auth_bug

Ce qui signifie "extraire et créer une branche locale nommée auth_bug et faire suivre la branche distante (dernier paramètre) auth_bug

Test de votre succursale locale travaille sur cette branche à distance en utilisant dcommit avec --dry-run (-n):

git svn dcommit -n

Et serveur SVN doit répondre avec le nouveau nom de la branche:

S'engageant à https://scm-server.com/svn/portal/branches/auth_bug ...

64voto

kch Points 25855

à partir de git v1.6.1, `` est disponible.

De la documentation de git :

 Direction générale des créer une branche dans le dépôt SVN. -m,--message permet de spécifier le message de validation. -t,--tag créer une balise à l’aide de la tags_subdir au lieu de la branches_subdir spécifié pendant git init de svn. 

Les versions précédentes de git ne fournissent pas un moyen de créer une branche svn.

4voto

Bryan J Swift Points 714

Je viens de @kch (7 décembre 2008) mise à jour la balise v1.6.1-rc1 de git et il ne contient-elle pas la commande de branch git svn et de la documentation pour elle. Si la version v1.6.1 du TGI doit contenir (on l’espère) cette commande.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X