2009-10-15 4 views
1

Je travaille sur le nouveau projet visual studio 2008 et ClearCase 7.01 (base ClearCase) comme contrôle de source.
Je suis très nouveau à l'environnement .Net, mes questions:clear case et visual studio2008

  1. Pour le déploiement, comment obtenir la source d'un cas clair?
    Mon idée est de créer une branche, d'appliquer une étiquette et d'utiliser Nant ou Cruise Control pour la compilation.

  2. Pour un petit travail dans une source, (demande de changement) ai-je besoin de ramifier toutes les sources et de travailler sur cette branche?
    Si le branchement n'est pas requis, comment puis-je obtenir toute la source pour le déploiement

  3. Comment appliquer des étiquettes à toutes les sources?
    Est-il possible de valider que l'étiquette est attachée à tous les objets

Merci à l'avance

Répondre

0

Combien de développeurs travaillant sur la même base de code?

J'ai une branche principale.

Lorsque le code est transmis à un serveur, j'étiquette tout le code actuel dans ClearCase et verrouille l'étiquette.

Si je dois résoudre un problème sur un serveur, mais que j'ai apporté des modifications importantes depuis cette étiquette qui ne peut pas être transmise au serveur, je branche à partir de cette étiquette, corrige le changement, a été poussé, puis fusionner ce retour à ma branche principale.

Ainsi, le développement obtient une branche principale, et d'urgence Bugfixes peut obtenir une deuxième branche (temporaire).

0
  1. L'étiquette est suffisante lorsque vous appuyez sur le serveur. Le verrouillage de l'étiquette, comme recommandé par Dean J, est une bonne idée car, contrairement aux lignes de base UCM, une étiquette peut être déplacée d'une version à l'autre.

  2. Une branche sert à isoler un effort de développement non compatible avec le courant. Si votre demande de modification se trouve dans le flux de développement principal, vous n'avez pas besoin de branche.
    Mais si c'est pour une étiquette donnée, le branchement à partir de cette étiquette vous permet d'effectuer toute correction nécessaire tout en continuant à développer sur la branche principale.
    Maintenant, comme expliqué dans "What are the basic ClearCase concepts every developer should know?", ClearCase utilise un mécanisme de branchement bon marché. Vous spécifiez seulement que vous ferez une branche en cas de modification. Mais le fait de créer une branche ne s'applique pas à n'importe quelle source tout de suite.

Votre spécification de configuration ressemblera à quelque chose comme:

element * CHECKEDOUT 
element * .../MY_BRANCH_FOR_FIX/LATEST 
element * MY_LABEL -mkbranch MY_BRANCH_FOR_FIX 
element /main/0 -mkbranch MY_BRANCH_FOR_FIX 
element /main/LATEST 

3/

  • une étiquette est d'abord déclaré (ct mklbtype), puis appliquée (ct ùklabel).
    Mais vous ne pouvez pas garantir qu'il sera appliqué sur tous fichiers d'une structure donnée (seulement les lignes de base UCM sur un composant UCM peut avoir que)

la version du répertoire sélectionné par la spécification de configuration de la vue est utilisée pour la récursivité.

Si votre spécification de configuration ne sélectionne pas la bonne version, ou aucune version du tout pour un élément spécifique, elle ne recevra pas d'étiquette.
Les versions extraites ne sont pas non plus éligibles pour une étiquette.
Vous avez donc besoin d'une vue dynamique que vous n'utilisez que pour cela (sans crainte de manquer des versions extraites, puisque vous ne l'utilisez que pour mklabel), avec une spécification de configuration valide.