Fusionner des dossiers et des fichiers
Publication: mars 2016
Pour les différentes raisons décrites dans Créer des branches de dossiers et de fichiers, de nombreuses équipes de développement de logiciels travaillent dans un code base répliqué dans différentes branches. Si votre équipe utilise des branches, elle finira par devoir intégrer le travail accompli dans les différentes branches pendant certaines phases de votre projet. Par exemple, lorsque vous êtes prêt à tester une version complète de votre logiciel, vous devrez fusionner les modifications apportées aux différentes branches de l'équipe de fonctionnalité.
Les procédures de cette rubrique présentent comment utiliser l'interface utilisateur graphique de Visual Studio Application Lifecycle Management (ALM) pour fusionner les modifications effectuées dans les différentes branches. Pour plus d'informations sur l'exécution de fusions à l'invite de commandes, consultez Merge Command.
Autorisations requises
Pour effectuer ces procédures, vous devez disposer des autorisations suivantes :
L'autorisation Lire pour l'élément de l'arborescence source et l'autorisation Extraire pour l'élément de l'arborescence cible doit avoir la valeur Autoriser.
L'autorisation Fusionner doit être définie pour le chemin d'accès cible.
Si l'élément de l'arborescence cible est renommé, vous devez disposer de l'autorisation Extraire pour les arborescences source et cible avec la valeur Autoriser.
Si des fichiers affectés par l'opération sont verrouillés, l'autorisation Verrouiller doit avoir la valeur Autoriser. Pour plus d'informations sur les autorisations, consultez Référence des autorisations pour Team Foundation Server.
Initialiser une fusion depuis la fenêtre Contrôle de code source
Important
La version finale de Visual Studio Team Foundation Server 2010a introduit une distinction entre branches et dossiers.Vous pouvez ainsi constater dans l'illustration suivante que les branches et les dossiers sont représentés par des icônes différentes.
Si vous pouvez encore 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.Pour plus d'informations, consultez Créer des branches de dossiers et de fichiers.
Fusionner des branches, des fichiers et des dossiers à partir de l'Explorateur du contrôle de code source
Dans l'Explorateur du contrôle de code source, sélectionnez la branche, le dossier ou le fichier que vous souhaitez fusionner.
Cliquez sur le menu Fichier, pointez sur Contrôle de code source, Création de branche et fusion, puis cliquez sur Fusionner.
L'Assistant Fusion du contrôle de code source s'affiche. Pour plus d'informations sur l'utilisation de cet Assistant pour terminer la fusion, consultez Utiliser l'Assistant Fusion du contrôle de code source pour terminer une fusion.
Initialiser une fusion depuis la fenêtre Suivi de l'ensemble de modifications
Vous pouvez utiliser la fenêtre Suivi de l'ensemble de modifications pour consulter des informations telles que l'emplacement de création d'un ensemble de modifications, l'emplacement de sa fusion et la date de ces opérations. De plus, les branches dans lesquelles un ensemble de modifications n'a pas été fusionné sont mises en surbrillance. Si vous constatez pour une branche qu'un ensemble de modifications est nécessaire, mais manquant, procédez à un glisser-déplacer pour corriger ce problème.
Important
Cette procédure ne peut être exécutée que pour les ensembles de modifications qui affectent une branche.Vous pouvez ainsi constater dans l'illustration suivante que les branches et les dossiers sont représentés par des icônes différentes.
Pour plus d'informations, consultez Créer des branches de dossiers et de fichiers.
Glisser-déplacer un ensemble de modifications dans la Fenêtre Suivi des modifications
Dans l'Explorateur du contrôle de code source, sélectionnez une branche, un dossier ou un fichier contenu dans une branche.
Cliquez avec le bouton droit sur l'élément sélectionné, puis cliquez sur Afficher l'historique.
Dans la fenêtre Historique, cliquez avec le bouton droit sur l'ensemble de modifications que vous souhaitez afficher et sélectionnez Suivi de l'ensemble de modifications.
La boîte de dialogue Sélectionner des branches s'affiche.
(Facultatif) Dans la liste Branche cible, activez les branches que vous souhaitez afficher et désactivez les branches que vous souhaitez masquer.
Cliquez sur Visualiser.
La fenêtre Suivi de l'ensemble de modifications s'affiche.
Faites glisser la branche qui contient l'ensemble de modifications vers la branche cible.
L'Assistant Fusion du contrôle de code source s'affiche. Pour plus d'informations sur l'utilisation de cet Assistant pour terminer la fusion, consultez Utiliser l'Assistant Fusion du contrôle de code source pour terminer une fusion. Utiliser l'Assistant Fusion du contrôle de code source pour terminer une fusion
Exemple : Où se trouve cette nouvelle méthode ?
Pour illustrer une utilisation possible de la procédure précédente, considérez l'exemple suivant. Julie a demandé à Hervé d'implémenter une nouvelle méthode dans du code FeatureTeamA dont elle tire parti dans son code FeatureTeamB. Hervé écrit le code pour la nouvelle méthode, puis l'archive dans la branche FeatureTeamA. En partant, il croise Julie dans le couloir et lui indique qu'il a archivé la nouvelle méthode.
Julie retourne à son bureau et recherche la source la plus récente, mais elle ne trouve pas la nouvelle méthode qu'Hervé a archivée. Elle accède à l'Explorateur du contrôle de code source, consulte la fenêtre Historique de la branche FeatureTeamA et constate qu'Hervé a bien archivé la nouvelle méthode par le biais de l'ensemble de modifications 50. Elle clique avec le bouton droit sur l'ensemble de modifications 50 et clique sur Suivi de l'ensemble de modifications. La fenêtre suivante s'affiche :
Fenêtre Suivi de l'ensemble de modifications : Fusionner avec la branche parent
Dans la fenêtre Suivi de l'ensemble de modifications, Julie peut voir qu'Hervé a archivé la méthode avec l'ensemble de modifications 50, et qu'il l'a fusionnée à la branche Dev avec l'ensemble de modifications 51. Mais Julie ne peut pas obtenir le nouveau code tant que l'ensemble de modifications 50 n'est pas fusionné dans la branche FeatureTeamB. Elle fait donc glisser la branche Dev sur la branche FeatureTeamB pour lancer l'Assistant Fusion du contrôle de code source, qu'elle utilise ensuite pour terminer la fusion.
Utiliser l'Assistant Fusion du contrôle de code source pour terminer une fusion
Une fois que vous avez réalisé l'une des procédures ci-dessus, l'Assistant Fusion du contrôle de code source s'affiche. Cet Assistant vous permet de spécifier la source et la cible de la fusion. Vous pouvez fusionner une branche entière dans une autre branche ou sélectionner un ensemble de modifications spécifique ou un groupe d'ensembles de modifications.
Utiliser l'Assistant Fusion du contrôle de code source pour fusionner des fichiers, des dossiers ou des branches
Dans l'Assistant Fusion du contrôle de code source, dans la zone Branche source, tapez le nom de la branche source du projet d'équipe ou cliquez sur Parcourir pour en sélectionner un dans la liste.
Dans la liste déroulante Branche cible, sélectionnez la branche cible du projet d'équipe avec laquelle vous souhaitez fusionner la branche source.
Sélectionnez la plage de modifications que vous souhaitez fusionner dans la branche cible en choisissant l'option Toutes les modifications jusqu'à une version spécifique ou Ensembles de modifications sélectionnés, puis cliquez sur Suivant.
Conseil
Si possible, cliquez sur Toutes les modifications jusqu'à une version spécifique, car cette option réduit le risque de conflits lors des fusions futures.
Si vous avez sélectionné Toutes les modifications jusqu'à une version spécifique, la page Sélectionner les versions des éléments sources s'affiche. Sélectionnez la version des éléments que vous souhaitez utiliser.
Ensemble de modifications
Fusionnez en spécifiant une version d'ensemble de modifications.
Date
Fusionnez en spécifiant une version de date.
Étiquette
Fusionnez en spécifiant une version d'étiquette.
Dernière version
Fusionnez en spécifiant la version la plus récente.
Espace de travail
Fusionnez en spécifiant une version d'espace de travail.
Si vous avez sélectionné Ensembles de modifications sélectionnés, la page Sélectionner les ensembles de modifications à fusionner dans la branche cible s'affiche. Sélectionnez l'ensemble de modifications que vous souhaitez fusionner.
Conseil
Vous pouvez maintenir enfoncée la touche CONTRÔLE ou la touche MAJ pour sélectionner plusieurs éléments à la suite.
Cliquez sur Suivant, puis dans la page Effectuer l'opération de fusion, cliquez sur Terminer.
Une ou plusieurs modifications en attente sont générées.
(Facultatif) Si vous souhaitez archiver immédiatement les modifications en attente, vous pouvez exécuter les étapes suivantes :
Dans le menu Affichage, pointez sur Autres fenêtres, puis cliquez sur Modifications en attente.
Utilisez la fenêtre Modifications en attente pour archiver les modifications. Pour plus d'informations, consultez Archiver votre contribution au code base de l'équipe.
Voir aussi
Utiliser les branches pour isoler le risque dans le contrôle de version Team Foundation
Merge Command
Merges Command
Résoudre les conflits du contrôle de version Team Foundation
Utiliser l'Explorateur du contrôle de code source pour gérer les fichiers sous contrôle de version