2010-12-08 37 views
2

J'ai dans mon dépôt SVN une branche appelée 'Version4'
maintenant j'ai créé à partir de cette branche une autre branche appelée 'Version4.5' de sorte que le parent de cette branche devrait être la branche 'Version4'.
Cette hiérarchie est-elle affichée quelque part dans les vues SVN? parce que quand j'ouvre le navigateur de référentiel je peux voir les dossiers de ces 2 branches côte à côte dans le même niveau et pas l'un sous l'autre.
Peut-être que la hiérarchie n'a aucune importance pour SVN et je peux fusionner de n'importe quelle branche à n'importe quelle branche (même si logiquement cela n'a pas de sens)?Est-ce que SVN montre la hiérarchie de branche n'importe où?

Répondre

1

Dans Subversion, la dérivation et le balisage sont effectués via une copie de répertoire régulière; ce n'est pas un concept bultin et il n'a rien de spécial. L'emplacement affiché dans le navigateur du référentiel dans celui que vous avez choisi lors de la copie. Si vous n'êtes pas satisfait, vous pouvez déplacer des choses comme d'habitude. Les seules relations physiques qui existent entre les branches sont:

  • ancêtres communs (avant de bifurquer)
  • l'historique de la fusion (après branchement)
+0

Toujours pas clair pour moi. Puis-je voir à travers Tortoise qu'une branche est un enfant d'un autre ou non? – Spiderman

+0

@Spiderman, vous pouvez jeter un oeil au "graphique de révision". Vous pouvez le générer à partir du menu contextuel. –

4

Peut-être que la hiérarchie n'a pas d'importance du tout SVN et je peux fusionner de n'importe quelle branche à n'importe quelle branche (même si logiquement cela n'a aucun sens)?

La disposition de l'arborescence de répertoires dans un référentiel subversion n'a en fait aucune importance. Avoir des dossiers appelés "tronc", "tags", "branches" et les utiliser comme tels est une simple convention (mais bien sûr très utile).

Vous pouvez voir quelle branche a été créée à partir de quelle autre branche (ou étiquette, ou autre) en inspectant l'historique des versions. Il apparaîtra comme le chemin source de la commande COPY qui a créé la branche.

Je vous recommande fortement d'utiliser un outil GUI ou quelque chose comme Trac pour pouvoir étudier confortablement ces choses.

+0

Savez-vous si dans l'outil graphique 'Trac' je pourrai voir la hiérarchie des branches? Ceci est une caractéristique importante pour la gestion du développement. – Spiderman

+0

Trac ne vous montrera pas la hiérarchie des branches. En règle générale, il est recommandé de créer des branches à partir du tronc avec une approche de tronc stable. Si vous adoptez une approche du tronc instable, ce que vous faites est bien. – jgifford25

+0

Dans Trac, lorsque vous consultez l'historique des révisions d'une branche, il vous indique (en tant qu'entrée la plus ancienne) d'où la branche a été copiée. Mais oui, il n'y a pas une seule page qui rapporte cela pour toutes les branches à la fois. – Thilo

0

Quel navigateur de référentiel - l'interface Web? C'est une vue très simple de la dernière révision (ou d'une mise à jour) pour l'ensemble du dépôt.

Si vous utilisez alors le mieux que vous êtes susceptible d'avoir le serveur et le client 1.5+ est une propriété svn:mergeinfo à la racine de chaque révision,

svn propget svn:mergeinfo http://myserver/svn/branches/version4.5/ 

qui énumère les branches de source et révisions de tout copier et fusionner vous avez fait. Je pense que la première entrée sera l'original de cette branche a été créée.