2008-10-01 6 views
6

Nous passons de SourceGear Vault à TortoiseSVN avec VisualSVN pour l'intégration de Visual Studio - absolument l'amour. Cependant, il existe plusieurs bibliothèques de classes que nous référençons dans plusieurs applications différentes qui ne font pas partie de la racine de copie de travail dans aucune des applications. Quelle est la meilleure façon de traiter cela afin de pouvoir continuer à utiliser l'intégration de Visual Studio, tout en conservant différentes bibliothèques de classes situées en dehors de la racine de chaque projet/application? SourceGear n'a aucun problème avec ceci.VisualSVN et bibliothèques de classes ne se trouvant pas dans la copie de travail racine

Il est possible d'ajouter des bibliothèques de classes séparément en utilisant TortoiseSVN dans l'explorateur, mais il n'y a aucune possibilité de valider les modifications de quelque chose en dehors de la copie de travail depuis Visual Studio; il n'y a pas non plus de «feux de circulation» VisualSVN indiquant l'état de ces bibliothèques de classes de copie de travail en dehors de celles-ci. Par ailleurs, nous allons aussi avec la route "un référentiel avec plusieurs projets" par opposition à plusieurs référentiels, d'autant plus que c'est ainsi que nous travaillons depuis des années jusqu'à maintenant.

MISE À JOUR:

Je relis certaines choses que j'avais regardé avant et découvert que svn: externals ne se réfèrent pas seulement à l'aide du code dans différents référentiels, mais peuvent également être utilisés pour utiliser plusieurs copies de travail dans VisualSVN.

Voir http://www.visualsvn.com/support/topic/00007/ et http://svnbook.red-bean.com/en/1.2/svn.advanced.externals.html

Cependant, est-ce la meilleure façon de traiter cette question? Il y a un good thread qui passe à travers les choses, mais ne résout pas complètement les choses.

Par conséquent, utilisez svn: externals ou non? Utiliser plusieurs référentiels ou non? Encore une fois, pendant des années, nous avons référencé le code dans des bibliothèques de classes partagées parmi plusieurs solutions/applications et cela fonctionne pour nous. Maintenant, comment faire le mieux avec VisualSVN?

Répondre

4

Trouver les meilleures réponses here:

Projets Référencés

Il est parfois utile de construire une copie de travail qui est fait d'un certain nombre de caisses. Par exemple, vous pouvez vouloir que différents sous-répertoires proviennent d'emplacements différents dans un référentiel, ou peut-être de différents référentiels. Si vous voulez que chaque utilisateur ait la même disposition, vous pouvez définir les propriétés svn: externals.

Et here:

Inclure un sous-projet commun

Parfois, vous voudrez inclure un autre projet dans votre copie de travail, peut-être un code de bibliothèque. Vous ne voulez pas dupliquer ce code dans votre référentiel, car vous perdriez alors la connexion avec le code original (et maintenu). Ou peut-être vous avez plusieurs projets qui partagent le code de base. Il y a au moins 3 façons de gérer cela.

Questions connexes