Question Comment créer une branche dans SVN?


Comment créer une branche dans SVN?


578
2017-08-05 09:25


origine


Réponses:


Branching in Subversion est facilité par une installation de copie très très légère et efficace.

L'embranchement et le marquage sont effectivement les mêmes. Il suffit de copier un dossier entier dans le référentiel vers un autre emplacement dans le référentiel en utilisant le svn copy commander.

Fondamentalement, cela signifie que c'est par convention ce que signifie la copie d'un dossier - que ce soit une sauvegarde, un tag, une branche ou autre. En fonction de la façon dont vous voulez réfléchir aux choses (normalement selon l'outil SCM que vous avez utilisé dans le passé), vous devez configurer une structure de dossier dans votre référentiel pour prendre en charge votre style.

Les styles courants sont d'avoir un tas de dossiers en haut de votre dépôt appelé tags, branches, trunk, etc. - qui vous permet de copier votre ensemble trunk (ou sous-ensembles) dans le tags et / ou branches Dossiers. Si vous avez plus d'un projet, vous pouvez répliquer ce type de structure dans chaque projet:

Cela peut prendre un certain temps pour s'habituer au concept - mais cela fonctionne - assurez-vous que vous (et votre équipe) êtes clair sur les conventions que vous allez utiliser. C'est aussi une bonne idée d'avoir une bonne convention de nommage - quelque chose qui vous indique pourquoi la branche / étiquette a été faite et si elle est toujours appropriée - envisager des façons d'archiver les branches qui sont obsolètes.


321
2017-08-05 13:40



Subversion le rend facile (certains pensent trop facile) pour créer une nouvelle branche en utilisant la commande svn copy.

$ svn copy svn+ssh://host.example.com/repos/project/trunk \
           svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH \
      -m "Creating a branch of project"

573
2017-08-05 09:25



Si vous êtes repo est disponible via https, vous pouvez utiliser cette commande pour se brancher ...

svn copy https://host.example.com/repos/project/trunk \
       https://host.example.com/repos/project/branches/branch-name \
  -m "Creating a branch of project"

27
2018-02-10 20:36



svn cp /trunk/ /branch/NEW_Branch

Si vous avez des changements locaux dans le coffre, utilisez Rsync synchroniser les modifications

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch

24
2017-09-03 09:14



Normalement, vous le copiez dans svn + ssh: //host.example.com/repos/project/branches/mybranch pour que vous puissiez conserver plusieurs branches dans le dépôt, mais votre syntaxe est valide.

Voici quelques conseils sur comment configurer votre mise en page de référentiel.


14
2017-08-05 12:40



Supposons que vous vouliez créer une branche à partir d'un nom de tronc (en tant que "TEST") puis utilisez:

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST

12
2017-07-23 09:51



Si vous envisagez même de fusionner votre succursale, je vous suggère fortement de regarder ceci:

Svnmerge.py

J'entends Subversion 1.5 construit plus de suivi de fusion, je n'ai aucune expérience avec cela. Mon projet est sur 1.4.x et svnmerge.py est un épargnant de vie!


11
2017-08-05 12:46



Astuce pour les nouveaux utilisateurs SVN Cela peut aider un peu à obtenir les bonnes URL rapidement.

Courir svn info pour afficher des informations utiles sur la branche en cours d'extraction.

L'URL doit (si vous exécutez svn dans le dossier racine) vous donner l'URL dont vous avez besoin de copier.

Pour passer à la branche nouvellement créée, utilisez également svn switch commander:

svn switch http://my.repo.url/myrepo/branches/newBranchName

10
2018-03-28 11:30



  • Créez un nouveau dossier en dehors de votre projet actuel. Vous pouvez lui donner n'importe quel nom. (Exemple: Vous avez un checkout pour un projet nommé "Customization" et il a beaucoup de projets, comme "Project1", "Project2" .... Et vous voulez créer une branche de "Project1". Personnalisation ", faites un clic droit et créer un nouveau dossier et lui donner un nom," Project1Branch ").
  • Faites un clic droit sur "Myproject1" .... TortoiseSVN -> Branch / Tag.
  • Choisissez une copie de travail.
  • Ouvrir le navigateur .... Juste à droite du parallèle sur "To URL".
  • Sélectionnez la personnalisation ..... faites un clic droit puis Ajouter un dossier. et passez par le dossier que vous avez créé. Ici c'est "Project1Branch". Maintenant, cliquez sur le bouton OK pour ajouter.
  • Prenez le contrôle de cette nouvelle banch.
  • Encore une fois allez à votre projet quelle branche vous voulez créer. Cliquez avec le bouton droit sur TorotoiseSVN -> branche / tag. Ensuite, sélectionnez la copie de travail. Et vous pouvez donner l'URL en tant que nom de votre branche. comme {votre adresse IP / svn / AAAA / Customization / Project1Branch}. Et vous pouvez définir le nom dans l'URL afin qu'il crée le dossier avec ce nom seulement. Comme {Votre adresse IP / svn / AAAA / Personnalisation / Project1Branch / MyProject1Branch}.
  • Appuyez sur le bouton OK. Maintenant, vous pouvez voir les journaux ... votre copie de travail sera stockée dans votre branche.
  • Maintenant, vous pouvez prendre un contrôle ... et vous laisser profiter de votre travail. :)

5
2018-02-05 10:24