Créer des branches de dossiers et de fichiers
Vous pouvez utiliser les branches pour accomplir les objectifs suivants :
gérer le travail simultané effectué par plusieurs équipes sur le même code base ;
isoler les risques que présentent différents ensembles de modifications appliqués au code base ;
prendre des instantanés, puis prendre en charge des modifications isolées ultérieures (par exemple, pour créer une branche de publication).
Par exemple, l'illustration suivante montre comment la société DinnerNow a développé une structure de branche pour répondre aux besoins de l'entreprise.
Structure de branche de DinnerNow dans la fenêtre Hiérarchie
L'Équipe de fonctionnalité A (FeatureA) et l'Équipe de fonctionnalité B (FeatureB) effectuent leur travail chacune dans les branches distinctes. Lorsque les équipes sont prêtes à intégrer leur travail, elles fusionnent leurs branches dans la branche de développement (Dev). Lorsque les builds de la branche de développement (Dev) sont stables et prêtes à être testées, les équipes fusionnent la branche de développement (Dev) dans la branche de test (Test).
Une fois chaque version commercialisée, la branche principale (Main) est reliée par une branche à une nouvelle branche de version, telle que la branche Version1 et la branche Version2. En suivant cette stratégie, la société peut améliorer ou résoudre séparément chaque version antérieure du produit, si nécessaire.
Vous pouvez effectuer une opération de création de branche à l'aide de l'Explorateur du contrôle de code source, comme le montre cette rubrique, ou de la commande Branch à partir de l'invite de commandes. Pour plus d'informations, consultez Branch Command.
Conseil
La création de branche est une technique importante et efficace pour la création d'un ensemble parallèle de versions de vos fichiers.Toutefois, l'utilisation de branches peut rendre votre projet plus complexe et en augmenter le coût.Par exemple, lorsque vous fusionnez deux branches, vous devrez peut-être résoudre des conflits.
Avant de créer une branche, vous devez vous demander si vous pouvez mieux répondre à vos besoins en appliquant une étiquette.L'application d'une étiquette vous permet de prendre rapidement et facilement un instantané de l'état de vos fichiers afin de pouvoir récupérer ou générer ultérieurement les fichiers dans cet état.Pour plus d'informations, consultez Utiliser des étiquettes pour prendre un instantané de vos fichiers.
Convertir un dossier en branche
La version finale de Visual Studio Team Foundation Server 2010 a introduit une distinction entre branches et dossiers. L'illustration suivante présente le niveau supérieur de la structure de dossiers de DinnerNow :
Structure de dossiers de DinnerNow dans l'Explorateur du contrôle de code source
Comme le montre l'illustration, vous pouvez toujours utiliser des dossiers pour organiser des branches dans la hiérarchie de contrôle de version d'un projet d'équipe. Toutefois, les dossiers et les branches ont une apparence différente et des fonctionnalités différentes. Lorsque vous cliquez avec le bouton droit sur un dossier ou une branche, puis que vous cliquez sur Propriétés, des informations différentes et des fonctionnalités différentes s'affichent.
Lorsque vous effectuez des opérations de création de branche, les branches présentent des avantages significatifs par rapport aux dossiers. Les branches prennent en charge des fonctionnalités de contrôle de version qui fournissent une visibilité supplémentaire de votre structure de branche et de l'endroit où vos ensembles de modifications ont fusionné. (Pour plus d'informations, consultez les liens de la section Voir aussi, plus loin dans cette rubrique.)
Même si vous pouvez toujours créer des branches et procéder à des fusions entre dossiers, il est préférable de n'exécuter ces opérations qu'entre des branches. La procédure suivante explique comment convertir un dossier en branche.
Autorisations requises
Pour exécuter la procédure suivante, votre autorisation Gérer la branche doit avoir la valeur Autoriser. Pour plus d'informations, consultez Référence des autorisations pour Team Foundation Server.
Pour convertir un dossier en branche
Dans l'Explorateur du contrôle de code source, vérifiez que le dossier que vous voulez convertir existe sur le serveur.
Si l'icône d'ajout en attente () apparaît en regard du dossier, cliquez avec le bouton droit sur ce dossier, puis cliquez sur Archiver les modifications en attente.
Cliquez avec le bouton droit sur le dossier à convertir, pointez sur Création de branche et fusion, puis cliquez sur Convertir en branche.
La boîte de dialogue Convertir un dossier en branche s'affiche.
Important Si vous convertissez un dossier pour lequel vous avez déjà créé une branche, vous devrez probablement activer la case à cocher Effectuer cette conversion de manière récursive sur tous les dossiers enfants qui possèdent des branches. Cette option convertit également en branches tous les dossiers possédant des branches à partir de ce même dossier.
(Facultatif) Dans le champ Propriétaire, tapez le nom de la personne qui possède cette branche.
Notes
Le champ Propriétaire est fourni uniquement à titre d'information.Le fait d'avoir son nom dans le champ Propriétaire n'accorde aucune autorisation supplémentaire.
(Facultatif) Dans le champ Description, tapez les informations que vous pensez être utiles à d'autres membres de l'équipe qui doivent utiliser cette branche ou comprendre son objectif.
Cliquez sur Convertir.
Important
Vous ne pouvez pas imbriquer des branches ; par conséquent, vous ne pouvez pas convertir un dossier en branche s'il contient une branche ou s'il est contenu par une branche.Par exemple, l'illustration suivante montre comment ni le parent ni l'enfant de la branche de l'équipe de fonctionnalité A (FeatureTeamA) ne peut être converti en une branche.
Après avoir converti un dossier en branche, vous pouvez le reconvertir en dossier si votre équipe décide de modifier la structure de la branche.
Pour convertir une branche en dossier
Dans l'Explorateur du contrôle de code source, cliquez sur la branche à convertir.
Dans le menu Fichier, pointez sur Contrôle de code source, sur Création de branche et fusion, puis sur Convertir en dossier.
Lorsque le message Reconvertir la branche en dossier s'affiche, cliquez sur Oui.
Créer une branche pour une autre branche
Après avoir converti un dossier en branche, vous pouvez créer d'autres branches à partir de cette branche. La procédure suivante montre comment vous pouvez utiliser l'interface graphique utilisateur de Visual Studio Application Lifecycle Management (ALM) pour créer une branche pour une autre branche. (Pour plus d'informations sur la façon d'effectuer cette tâche à partir de l'invite de commandes, consultez Branch Command.)
Autorisations requises
Pour exécuter cette procédure, votre autorisation Gérer la branche doit avoir la valeur Autoriser pour les chemins d'accès aux branches cibles et sources. Votre autorisation Fusionner pour le chemin d'accès de la branche cible doit avoir la valeur Autoriser. Pour plus d'informations, consultez Référence des autorisations pour Team Foundation Server.
Pour créer une branche pour une autre branche
Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur la branche pour laquelle vous voulez créer une branche, pointez sur Création de branche et fusion, puis cliquez sur Créer une branche.
La boîte de dialogue Créer une branche à partir de s'affiche.
Dans la zone Nom de la branche cible, spécifiez le chemin d'accès de la nouvelle branche.
(Facultatif) Dans la section Créer une branche à partir de la version, cliquez sur l'une des options suivantes de la liste Par :
Si vous cliquez sur Dernière version, la branche est créée pour la version la plus récente dans le contrôle de version.
Si vous cliquez sur Ensemble de modifications, vous pouvez spécifier le numéro de l'ensemble de modifications dans la zone Ensemble de modifications. Vous pouvez également cliquer sur le bouton de sélection (...) pour ouvrir la boîte de dialogue Rechercher les ensembles de modifications.
Pour plus d'informations, consultez Rechercher et afficher des ensembles de modifications.
Si vous cliquez sur Date, vous pouvez spécifier une date dans la zone Date.
Cliquez sur Créer une branche.
La branche est créée et s'affiche dans l'Explorateur du contrôle de code source.
Remarque Contrairement à la plupart des opérations de contrôle de version, cette opération ne génère pas de modification en attente. L'opération est en effet exécutée immédiatement et vous ne pouvez pas l'annuler.
Créer une branche pour un dossier ou un fichier
Même si vous pouvez créer directement une branche pour un dossier ou un fichier, nous vous déconseillons de le faire. En effet, vous ne pourrez ni afficher votre hiérarchie de branches ni suivre vos ensembles de modifications. Il est préférable de créer des branches et de procéder à des fusions uniquement entre les branches, comme décrit précédemment dans cette rubrique.
Mais si vous avez un besoin particulier de créer des branches pour un dossier ou un fichier, vous pouvez procéder comme suit pour effectuer cette tâche. (Pour plus d'informations sur la façon d'effectuer cette tâche à partir de l'invite de commandes, consultez Branch Command.)
Autorisations requises
Pour exécuter cette procédure, votre autorisation Extraire et votre autorisation Fusionner pour le chemin d'accès cible doit avoir la valeur Autoriser. Pour plus d'informations, consultez Référence des autorisations pour Team Foundation Server.
Pour créer une branche pour un dossier ou un fichier
Dans l'Explorateur du contrôle de code source, cliquez avec le bouton droit sur le dossier ou fichier que vous voulez convertir en branche, pointez sur Création de branche et fusion, puis cliquez sur Convertir en branche.
La boîte de dialogue Créer une branche s'affiche.
Dans la zone Cible, modifiez l'emplacement et le nom de la nouvelle branche.
Vous pouvez également cliquer sur Parcourir pour spécifier une cible.
Dans la section Créer une branche à partir de la version, cliquez sur l'une des options suivantes de la liste Par :
Si vous cliquez sur Dernière version, la branche est créée pour la version la plus récente dans le contrôle de version.
Si vous cliquez sur Ensemble de modifications, vous pouvez spécifier le numéro de l'ensemble de modifications dans la zone Ensemble de modifications. Vous pouvez également cliquer sur le bouton de sélection (...) pour ouvrir la boîte de dialogue Rechercher les ensembles de modifications.
Pour plus d'informations, consultez Rechercher et afficher des ensembles de modifications.
Si vous cliquez sur Date, vous pouvez spécifier une date dans la zone Date.
Si vous cliquez sur Étiquette, vous pouvez taper le nom d'étiquette dans la zone Étiquette. Vous pouvez également cliquer sur le bouton de sélection (...) pour ouvrir la boîte de dialogue Rechercher une étiquette.
Pour plus d'informations, consultez Utiliser des étiquettes pour prendre un instantané de vos fichiers.
Si vous cliquez sur Version de l'espace de travail, la branche est créée pour la version dans votre espace de travail.
(Facultatif) Activez la case à cocher Créer des copies de travail locales pour la nouvelle branche pour créer une copie de l'élément sous contrôle de version sur l'espace de travail local. Désactivez cette case à cocher si vous n'avez pas besoin d'une copie locale et que vous voulez améliorer les performances en ne téléchargeant pas de nombreux éléments sur votre ordinateur.
Cliquez sur OK.
La branche est créée et s'affiche dans l'Explorateur du contrôle de code source.
Notes
Une fenêtre Rechercher un dossier s'affiche si vous avez activé la case à cocher Créer des copies de travail locales pour la nouvelle branche et que le dossier local que vous avez spécifié n'est pas mappé dans l'espace de travail actuel.Recherchez un dossier ou cliquez sur Créer un nouveau dossier, spécifiez un dossier à synchroniser avec les éléments sous contrôle de version, puis cliquez sur OK.
Voir aussi
Tâches
Afficher la hiérarchie de branches d'un projet d'équipe
Concepts
Utiliser l'Explorateur du contrôle de code source pour gérer les fichiers sous contrôle de version
Afficher l'emplacement et le moment de la fusion d'ensembles de modifications
Créer une branche de façon stratégique