Procédure pas à pas : fonctionnalités avancées du contrôle de version

Mise à jour : novembre 2007

Cette procédure pas à pas explique comment utiliser les branches, les fusions et les étiquettes dans le contrôle de version Team Foundation.

Avant d'appliquer cette procédure pas à pas, vous devez avoir des connaissances de base concernant la création de branches, la fusion et l'application d'étiquettes aux éléments de contrôle de version :

  • Création de branches   Dans le contrôle de version Team Foundation, la création d'une branche consiste à copier un jeu spécifié de fichiers et de dossiers se trouvant sur le serveur Team Foundation dans un nouvel emplacement appelé branche. Une branche crée essentiellement de nouveaux dossiers ou fichiers basés sur des dossiers ou des fichiers existants. La création de branches permet de conserver l'historique des dossiers et fichiers branchés. Cela permet de fusionner les modifications à partir d'anciens fichiers dans de nouveaux. Vous pouvez créer des branches par le biais de l'Explorateur du contrôle de code source ou à partir de la ligne de commande à l'aide de la Branch, commande. Pour plus d'informations, consultez Comprendre la notion de branches.

  • Fusion   Le processus de fusion consiste à combiner deux versions distinctes de fichiers, de dossiers ou de projets d'équipe se trouvant dans des branches séparées. Une branche est la branche source et l'autre la branche cible. La branche source contient les éléments à fusionner dans la branche cible. Les versions de ces dossiers et de ces fichiers peuvent être basées sur des ensembles de modifications, des dates, des étiquettes, des espaces de travail ou la version la plus récente. Pour plus d'informations, consultez Comprendre la notion de branches. Vous pouvez effectuer une fusion à l'aide de l'Explorateur du contrôle de code source ou à partir de la ligne de commande à l'aide de la Merge, commande.

  • Étiquetage   Une étiquette est un marqueur que vous pouvez affecter de façon sélective à un ensemble de fichiers et de dossiers non liés dans votre serveur de contrôle de version. Les étiquettes facilitent l'extraction d'une collection spécifique d'éléments dans un espace de travail à des fins de développement ou de génération.

Cette rubrique explique comment créer une branche, puis comment modifier les fichiers d'un membre de l'équipe dans la branche résultante mais aussi dans la branche d'origine. Ces modifications sont ensuite archivées et fusionnées. La fusion identifie les conflits que vous devez ensuite résoudre. Enfin, vous allez appliquer des étiquettes à un ensemble de modifications.

Composants requis

Avant de pouvoir exécuter cette procédure pas à pas, vous devez :

Autorisations requises

Pour exécuter cette procédure pas à pas, vous devez disposer des autorisations PendChange et Checkin.

Création de branches d'éléments de contrôle de version

La procédure suivante explique comment créer une branche. La création de branches est une fonction du contrôle de version Team Foundation permettant de créer des dossiers ou des fichiers à partir de dossiers ou de fichiers existants. Pour plus d'informations, consultez Comprendre la notion de branches et Comment : créer des fichiers et des dossiers avec branches.

Attention :

Les procédures suivantes supposent que vous avez déjà effectué les étapes de la Procédure pas à pas : exploration du contrôle de version Team Foundation.

Pour créer une branche des éléments dans le contrôle de version

  1. Dans le menu Affichage, cliquez sur Autres fenêtres, puis sur Explorateur du contrôle de code source pour l'ouvrir.

  2. Dans l'Explorateur du contrôle de code source, ouvrez le dossier MyWindowsApp contenant le fichier solution MyWindowsApp.sln créé lors de la Procédure pas à pas : exploration du contrôle de version Team Foundation. Cliquez dessus avec le bouton droit, puis sélectionnez Créer une branche

  3. Dans la boîte de dialogue Créer une branche, dans la zone de texte Cible, modifiez l'emplacement et le nom de la nouvelle branche en ajoutant Branche de test à la fin. Vous pouvez aussi cliquer sur Parcourir pour rechercher un emplacement.

    Remarque :

    La chaîne "-branche" est automatiquement ajoutée aux branches cibles.

  4. Dans la liste déroulante Par de la section Créer une branche à partir de la version, sélectionnez Dernière version.

  5. Cliquez sur OK.

    Le contrôle de version Team Foundation crée la nouvelle branche et l'affiche dans l'Explorateur du contrôle de code source.

  6. Double-cliquez sur le nouveau dossier de branche nommé MyWindowsApp Test Branch.

    Notez que sous la colonne Modification en attente, l'état de chaque élément dans la nouvelle branche est branche.

  7. Une branche étant une modification en attente, vous devez effectuer un archivage pour appliquer la branche. Cliquez avec le bouton droit sur le dossier MyWindowsApp Test Branch et sélectionnez Archiver les modifications en attente.

  8. Dans la boîte de dialogue Archiver, dans la zone de texte de commentaire, tapez Test branch et cliquez sur Archiver.

    Remarque :

    Si des stratégies d'archivage sont en vigueur dans votre projet d'équipe, vous devrez peut-être associer des éléments de travail ou des notes d'archivage avant de continuer. Pour plus d'informations, consultez Comment : associer des éléments de travail à des ensembles de modifications et Comment : associer des notes d'archivage à des ensembles de modifications.

    La colonne Modification en attente de l'Explorateur du contrôle de code source affiche des entrées vierges. Cela indique que votre nouvelle branche a été archivée.

Vous venez de créer une nouvelle branche et l'avez archivée. La procédure suivante consiste à apporter des modifications aux fichiers dans la branche d'origine et la nouvelle branche.

Appliquer des modifications aux branches

Vous apporterez des modifications distinctes mais en conflit au même fichier dans les deux branches. Puis, vous fusionnerez les deux branches et devrez résoudre les conflits de fusion. La procédure suivante vous indique comment extraire et modifier des fichiers dans les deux branches.

Extraire et modifier des fichiers dans les branches du contrôle de version

  1. Dans la branche créée à l'étape précédente, développez le dossier MyWindowsApp Test Branch. Dans le volet droit, recherchez le fichier Class1.cs créé lors de la Procédure pas à pas : exploration du contrôle de version Team Foundation. Cliquez dessus avec le bouton droit, puis sélectionnez Extraire pour modification.

  2. Dans la boîte de dialogue Extraire, cliquez sur Extraire.

    L'Explorateur du contrôle de code source affecte la valeur Modification à l'état Modification en attente du fichier.

  3. Double-cliquez sur le fichier Class1.cs pour l'ouvrir et le modifier.

  4. Ajoutez le code en surbrillance suivant au fichier Class1.cs :

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace MyWindowsApp
    {
          class Class1
          {
                string SourceControlMerge = "New branch";
          }
    } 
    
  5. Dans le menu Fichier, cliquez sur Enregistrer Class1.cs.

  6. Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur le fichier Class1.cs et sélectionnez Archiver les modifications en attente.

  7. Dans la boîte de dialogue Archiver, dans la zone de texte de commentaire, tapez Modifications de la nouvelle branche et cliquez sur Archiver.

    Remarque :

    Si des stratégies d'archivage sont en vigueur dans votre projet d'équipe, vous devrez peut-être associer des éléments de travail ou des notes d'archivage avant de continuer. Pour plus d'informations, consultez Comment : associer des éléments de travail à des ensembles de modifications et Comment : associer des notes d'archivage à des ensembles de modifications.

    La colonne Modification en attente de l'Explorateur du contrôle de code source affiche une entrée vierge pour le fichier Class1.cs. Cela indique que vos modifications ont été archivées.

    Vous allez maintenant apporter des modifications à la branche d'origine. Les étapes s'apparentent à celles que vous venez d'effectuer.

  8. Dans l'Explorateur du contrôle de code source, ouvrez le dossier contenant la branche d'origine nommée MyWindowsApp.

  9. Dans la branche d'origine, développez le dossier MyWindowsApp et dans le volet droit, recherchez le fichier Class1.cs créé lors de la Procédure pas à pas : exploration du contrôle de version Team Foundation. Cliquez dessus avec le bouton droit et sélectionnez Extraire pour modification.

  10. Dans la boîte de dialogue Extraire, cliquez sur Extraire.

    L'Explorateur du contrôle de code source affecte la valeur Modification à l'état Modification en attente du fichier.

  11. Double-cliquez sur le fichier Class1.cs pour l'ouvrir et le modifier.

  12. Ajoutez le code en surbrillance suivant au fichier Class1.cs :

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace MyWindowsApp
    {
          class Class1
          {
                string SourceControlMerge = "Original branch";
          }
    } 
    
  13. Dans le menu Fichier, cliquez sur Enregistrer Class1.cs.

  14. Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur le fichier Class1.cs et sélectionnez Archiver les modifications en attente.

  15. Dans la zone de texte de commentaire de la boîte de dialogue Archiver, tapez Modifications de la branche d'origine et cliquez sur Archiver.

    Remarque :

    Si des stratégies d'archivage sont en vigueur dans votre projet d'équipe, vous devrez peut-être associer des éléments de travail ou des notes d'archivage avant de continuer. Pour plus d'informations, consultez Comment : associer des éléments de travail à des ensembles de modifications et Comment : associer des notes d'archivage à des ensembles de modifications.

    La colonne Modification en attente de l'Explorateur du contrôle de code source affiche une entrée vierge pour le fichier Class1.cs. Cela indique que vos modifications ont été archivées.

Vous avez créé une branche et apporté des modifications à la branche d'origine et à la nouvelle branche. La procédure suivante vous indique maintenant comment fusionner les modifications des deux branches.

Fusion d'éléments de contrôle de version

Après avoir apporté des modifications aux fichiers des deux branches, vous pouvez réaliser une fusion. La procédure suivante vous indique comment effectuer une fusion à l'aide de l'Explorateur du contrôle de code source. Pour plus d'informations, consultez Fonctionnement de la fusion et Comment : fusionner des fichiers et des dossiers.

Pour fusionner des branches dans le contrôle de version

  1. Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur le dossier MyWindowsApp Test Branch et sélectionnez Fusionner.

    Le nom et le chemin d'accès au dossier MyWindows App Test Branch s'affichent dans la zone de texte Branche source de l'Assistant Fusion du contrôle de code source.

  2. Dans la liste déroulante Branche cible, sélectionnez le dossier MyWindowsApp.

  3. Dans Sélectionnez les modifications de la branche source à fusionner, sélectionnez Toutes les modifications jusqu'à une version spécifique,puis cliquez sur Suivant.

  4. À l'étape Sélectionner les versions des éléments sources, sélectionnez Dernière version dans la liste déroulante Type de version, puis cliquez sur Suivant.

  5. À l'étape Effectuer l'opération de fusion, cliquez sur Terminer.

    Puisque les branches source et cible sont différentes l'une de l'autre, la boîte de dialogue Résoudre les conflits apparaît. Suivez les étapes de la procédure suivante pour résoudre les conflits. S'il n'existe pas de conflit, la boîte de dialogue Résoudre le conflit de version n'apparaît pas.

Résolution de conflits de fusion

Étant donné qu'il existe des différences entre les fichiers dans les deux branches, vous êtes invité à prendre des mesures pour résoudre les conflits entre les deux branches. Pour plus d'informations, consultez Comment : résoudre les conflits entre deux fichiers. Pour résoudre les conflits de fusion, suivez ces étapes.

Pour résoudre des conflits de fusion

  1. Dans la boîte de dialogue Résoudre les conflits, cliquez sur Résoudre.

    La boîte de dialogue Résoudre le conflit de version s'affiche.

  2. Dans la boîte de dialogue Résoudre le conflit de version, sélectionnez Fusionner les modifications dans l'outil de fusion dans Options de résolution, puis cliquez sur OK.

  3. Dans l'outil de fusion, recherchez le conflit dans les deux fichiers en cliquant sur Modification suivante. Les fichiers sont présentés côte à côte. Ils affichent les deux chaînes (Branche d'origine et Nouvelle branche) saisies au cours de la procédure précédente.

  4. Cliquez sur le code contenant la chaîne Nouvelle branche.

    L'outil de fusion affiche la modification dans le volet inférieur.

  5. Cliquez sur OK.

  6. Dans la boîte de dialogue Microsoft Visual Studio, cliquez sur Oui pour enregistrer le fichier.

  7. Vous serez invité à accepter les résultats de la fusion. Cliquez sur Oui pour conserver le fichier fusionné.

  8. Dans la boîte de dialogue Résoudre les conflits, cliquez sur Fermer.

  9. Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur le dossier MyWindowsApp et sélectionnez Archiver les modifications en attente.

    La boîte de dialogue Archiver s'affiche.

  10. Dans la boîte de dialogue Archiver, cliquez sur Archiver.

    Remarque :

    Si des stratégies d'archivage sont en vigueur dans votre projet d'équipe, vous devrez peut-être associer des éléments de travail ou des notes d'archivage avant de continuer. Pour plus d'informations, consultez Comment : associer des éléments de travail à des ensembles de modifications et Comment : associer des notes d'archivage à des ensembles de modifications.

Vous venez de créer une branche, d'apporter des modifications à la branche d'origine et à la nouvelle branche, de fusionner les deux branches et de résoudre les conflits. La procédure suivante vous indique comment utiliser les étiquettes dans le contrôle de version Team Foundation.

Étiquetage d'éléments de contrôle de version

Dans le contrôle de version Team Foundation, une étiquette est un nom appliqué à un jeu spécifique de révisions. Ce jeu est souvent désigné par le terme "build instantané". Les étiquettes ne peuvent s'appliquer qu'à une révision d'un fichier. Les étiquettes offrent un moyen simple d'organiser un jeu de fichiers dans une révision. Pour plus d'informations, consultez Utilisation d'étiquettes et Comment : appliquer des étiquettes.

Pour appliquer des étiquettes au contrôle de version

  1. Dans l'Explorateur du contrôle de code source, ouvrez le dossier MyWindowsApp Test Branch créé au cours de la procédure précédente, cliquez dessus avec le bouton droit et sélectionnez Appliquer une étiquette.

  2. Dans la boîte de dialogue Choisir la version de l'élément, sélectionnez le dossier MyWindowsApp Test Branch.

  3. Sélectionnez Tous les fichiers (*.*) pour la zone Éléments de type, puis cliquez sur OK

  4. Dans la boîte de dialogue Appliquer une étiquette, dans la zone de texte Nom, tapez MyWindowsApp label test.

  5. Dans la zone de texte Commentaire, tapez Tous les fichiers pour la version de génération de MyWindowsApp.

  6. Sous Éléments, cliquez sur Ajouter.

  7. Dans la boîte de dialogue Choisir la version de l'élément, vérifiez que le projet d'équipe sur lequel vous travaillez apparaît dans la liste Regarder dans.

  8. Parcourez le dossier MyWindowsApp Test Branch pour rechercher le fichier Class1.cs, puis sélectionnez-le.

  9. Dans la liste Version, sélectionnez Dernière version.

  10. Cliquez sur OK.

    Le contrôle de version Team Foundation affiche la boîte de dialogue Appliquer une étiquette avec les éléments renseignés.

  11. Cliquez sur OK.

Voir aussi

Concepts

Utilisation d'étiquettes

Utilisation des ensembles de modifications du contrôle de version

Référence

Branch, commande

Branches, commande

Merge, commande

Merges, commande

Label, commande (contrôle de version Team Foundation)

Labels, commande

Archivages en attente, fenêtre

Autres ressources

Procédures pas à pas relatives au contrôle de version Team Foundation

Création de branche et fusion du contrôle de version Team Foundation