Question

Comment puis-je créer une succursale dans le SVN?

Était-ce utile?

La solution

La ramification dans la Subversion est facilité par un très très léger et efficace installation copie.

Embranchement et de l'étiquetage sont les mêmes.Il suffit de copier un dossier complet dans le référentiel à un autre endroit dans le référentiel à l'aide de la svn copy commande.

Fondamentalement, cela signifie que c'est par convention que la copie d'un dossier signifie - qu'il s'agisse d'une sauvegarde, de tag, de succursale ou de quoi que ce soit.Selon la façon dont vous voulez penser à des choses (normalement en fonction de SCM de l'outil que vous avez utilisé dans le passé), vous devez configurer une structure de dossier dans votre référentiel à l'appui de votre style.

Des styles communs sont à avoir un tas de dossiers en haut de votre dépôt appelé tags, branches, trunk, etc.- qui vous permet de copier l'intégralité de votre trunk (ou sous-ensembles) dans le tags et/ou branches des dossiers.Si vous avez plus d'un projet que vous pourriez vouloir reproduire ce type de structure de cadre de chaque projet:

Il peut prendre un certain temps pour se utilisé pour le concept, mais il fonctionne - assurez-vous juste que vous (et votre équipe) sont claires sur les conventions que vous allez utiliser.Il est également une bonne idée d'avoir une bonne convention de nommage - quelque chose que vous dit pourquoi la branche/étiquette a été fait et s'il est toujours approprié d'envisager des moyens de l'archivage des branches qui sont obsolètes.

Autres conseils

Créer une nouvelle branche à l'aide de la svn copy commande 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"

Si vous êtes à la pension de titres est disponible via le protocole https, vous pouvez utiliser cette commande pour la 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"
svn cp /trunk/ /branch/NEW_Branch

Si vous avez quelques modifications locales dans le coffre puis utilisez Rsync pour synchroniser les modifications

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

Normalement vous auriez du le copier dans svn+ssh://host.exemple.com/repos/projet/branches/mybranch de sorte que vous pouvez garder plusieurs branches dans le référentiel, mais votre syntaxe est valide.

Voici quelques conseils sur la comment configurer votre disposition du dépôt.

Supposons que vous voulez créer une branche à partir d'un tronc d'un nom ("TEST") ensuite, utilisez:

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

Si vous même plan sur la fusion de votre direction, je vous suggère fortement de regarder ceci:

Svnmerge.py

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

Tip Top pour les nouveaux utilisateurs SVN;cela peut aider un peu avec l'obtention de l'Url correcte rapidement.

Exécuter svn info pour afficher les informations utiles sur le courant extrait de la branche.

L'URL (si vous lancez svn dans le dossier racine) de vous donner l'URL que vous avez besoin de copier à partir.

Aussi pour passer à la branche nouvellement créée, utilisez la svn switch commande:

svn switch http://my.repo.url/myrepo/branches/newBranchName
  • Créer un nouveau dossier à l'extérieur de votre projet en cours.Vous pouvez lui donner n'importe quel nom.(Exemple:Vous avez une caisse pour un projet nommé "Personnalisation".Et il a de nombreux projets, comme "Projet1", "Project2"....Et vous voulez créer une branche "Projet1".Alors d'abord ouvrir la "Personnalisation", clic droit et créer un nouveau dossier et donnez-lui un nom, "Project1Branch").
  • Clic droit sur "Myproject1"....TortoiseSVN -> Branche/Étiquette.
  • Choisissez la copie de travail.
  • Ouvrez le navigateur....Juste à droite de parallèle sur "URL".
  • Sélectionnez la personnalisation.....clic droit puis Ajouter un Dossier.et de passer par le dossier que vous avez créé.Ici, il est "Project1Branch".Maintenant, cliquez sur le bouton OK pour ajouter.
  • Prendre la caisse de cette nouvelle notre.
  • De nouveau aller à votre projet de la branche que vous souhaitez créer.Cliquez-droit sur TorotoiseSVN -> branche/étiquette.Ensuite, sélectionnez la copie de travail.Et vous pouvez donner l'URL de votre nom de la branche.comme {votre adresse IP/svn/AAAA/Personnalisation/Project1Branch}.Et vous pouvez définir le nom dans l'URL, donc il va créer 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 logs dans ...votre copie de travail sera stocké dans votre branche.
  • Maintenant vous pouvez prendre un check out...et vous permettre de profiter de votre travail.:)
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top