une - tortoise svn branch




Comment créer une branche? (6)

Créez une nouvelle branche à l'aide de la commande svn copy comme suit:

$ 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"

Comment créer une branche dans SVN?


Le branchement dans Subversion est facilité par une installation de copie très très légère et efficace.

La ramification et le marquage sont effectivement les mêmes. Copiez simplement un dossier entier du référentiel dans un autre emplacement du référentiel à l'aide de la commande svn copy .

Fondamentalement, cela signifie que c’est par convention ce que signifie la copie d’un dossier - qu’il s’agisse d’une sauvegarde, d’une balise, d’une branche ou autre. En fonction de la manière dont vous voulez réfléchir (normalement en fonction de l'outil SCM que vous avez utilisé par le passé), vous devez configurer une structure de dossiers dans votre référentiel pour prendre en charge votre style.

Les styles habituels consistent à placer un groupe de dossiers en haut de votre référentiel appelés tags , branches , trunk , etc. - qui vous permettent de copier l'intégralité de votre ligne (ou sous-ensembles) dans les dossiers des tags et / ou des branches . Si vous avez plusieurs projets, vous pouvez reproduire ce type de structure sous chaque projet:

Cela peut prendre un certain temps pour s'habituer au concept - mais cela fonctionne - assurez-vous simplement que vous (et votre équipe) êtes clairs sur les conventions que vous allez utiliser. C'est également une bonne idée d'avoir une bonne convention d'appellation - quelque chose qui vous explique pourquoi la branche / balise a été faite et si elle est toujours appropriée - réfléchissez aux moyens d'archiver les branches qui sont obsolètes.


Normalement, vous devez le copier dans svn + ssh: //host.example.com/repos/project/branches/mybranch afin de pouvoir conserver plusieurs branches dans le référentiel, mais votre syntaxe est valide.

Voici quelques conseils sur la configuration de la disposition de votre référentiel .


Si votre référentiel est disponible via https, vous pouvez utiliser cette commande pour créer une branche ...

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

Supposons que vous souhaitiez créer une branche à partir d'un nom de ligne (sous le nom "TEST"), puis utilisez:

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

svn cp /trunk/ /branch/NEW_Branch

Si vous avez des modifications locales dans le coffre, utilisez Rsync pour synchroniser les modifications.

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




branching-and-merging