Mise à jour

Lorsque vous travaillez sur un projet du plan de travail, il se peut que d'autres membres de votre équipe valident des modification dans la copie du projet dans le référentiel. Pour obtenir ces modifications, vous pouvez "mettre à jour" le plan de travail de sorte qu'il corresponde à l'état de la branche. Les modifications affichées sont spécifiques à la branche que le projet du plan de travail est configuré pour partager. Vous pouvez définir le moment de la mise à jour.

La commande de mise à jour peut être émise à partir des deux emplacements suivants : le menu Equipe > Mettre à jour, ou la vue Synchronisation. Pour comprendre la différence entre ces deux commandes, il est important de connaître les trois différents types de modifications entrantes.

Lors de la sélection de Equipe > Mettre à jour, le contenu des ressources locales est mis à jour avec des modifications entrantes de tous les trois types ci-dessus. En ce qui concerne les modifications non conflictuelles et pouvant être fusionnées automatiquement, aucune autre intervention n'est requise (pour les conflits pouvant être fusionnés automatiquement, la ressource locale modifiée est placée dans un fichier dont le préfixe est ".#", uniquement dans le cas où la fusion automatique ne correspondrait pas à ce que souhaitait l'utilisateur). Cependant, pour les conflits ne pouvant pas être fusionnés automatiquement, ceux-ci sont fusionnés avec la ressource locale à l'aide d'un texte de marquage spécifique CVS (pour les fichiers ASCII) ou la ressource locale modifiée est placée dans un fichier dont le préfixe est ".#" (pour les fichiers binaires). Cela correspond au comportement de la ligne de commande CVS et peut être problématique une fois associé au mécanisme de compilation automatique d'Eclipse. De même, il est généralement souhaitable de déterminer les modifications entrantes avant de mettre à jour des ressources locales. Ces problèmes peuvent être traités par la vue Synchronisation.

Pour ouvrir la vue Synchronisation en mode entrant, procédez comme suit :

  1. Dans la vue Navigateur, sélectionnez les ressources à mettre à jour.
  2. Dans le menu en incrustation des ressources sélectionnées, choisissez Equipe > Synchroniser avec le référentiel. La vue Synchronisation s'affiche.
  3. Dans la barre d'outils de la vue Synchronisation, cliquez sur le bouton du mode entrant pour écarter toutes les ressources modifiées (modifications sortantes) du plan de travail dont vous disposez.

En mode entrant, les modifications qui ont été validées dans la branche depuis la dernière mise à jour s'affichent. La vue indique le type de chaque modification entrante (non conflictuelle, conflictuelle pouvant être fusionnée automatiquement ou conflictuelle ne pouvant pas être fusionnée automatiquement). Il existe deux options de mise à jour (disponibles à partir du menu contextuel d'une ressource dans la vue) permettant de gérer les différents types de conflits : Mettre à jour à partir du référentiel et Remplacer et mettre à jour. Lors de la sélection de l'option Mettre à jour à partir du référentiel dans la vue Synchronisation, seules les modifications non conflictuelles sont traitées, à l'exclusion des fichiers conflictuels pouvant être fusionnés ou non automatiquement dans la vue (tous les fichiers traités correctement sont supprimés de la vue). L'option Remplacer et mettre à jour est applicable aux deux types de conflits. Après avoir sélectionné cette commande, vous êtes invité, avant une tentative de fusion, d'indiquer si vous souhaitez fusionner automatiquement le contenu ou remplacer ce dernier par le fichier du référentiel. Si vous choisissez la fusion automatique, seuls les conflits pouvant être fusionnés automatiquement sont traités et les modifications entrantes sont fusionnées automatiquement avec les modifications locales. Dans le cas contraire, tous les conflits sont traités et les ressources locales sont remplacées par le contenu distant. Ce comportement de "remplacement" est rarement souhaitable. Une alternative est décrite ultérieurement.

Pour mettre à jour les fichiers non conflictuels et pouvant être fusionnés automatiquement, procédez comme suit :

  1. La sous-fenêtre Comparaison de la structure, située dans la partie supérieure de la vue Synchronisation, contient la hiérarchie des ressources comportant des modifications entrantes.
  2. Sélectionnez les fichiers non conflictuels et choisissez Mettre à jour à partir du référentiel dans le menu en incrustation. Les ressources sélectionnées sont alors mises à jour et supprimées de la vue.
  3. Sélectionnez les conflits pouvant être fusionnés automatiquement et choisissez Remplacer et mettre à jour dans le menu contextuel. Choisissez de mettre à jour uniquement les ressources pouvant être fusionnées automatiquement, puis cliquez sur OK. Les ressources sélectionnées sont alors mises à jour et supprimées de la vue.

Si le plan de travail local contient des modifications sortantes qui ne peuvent pas être fusionnées automatiquement avec des modifications entrantes de la branche, vous pouvez, au lieu de Remplacer et mettre à jour, fusionner manuellement les différences dans le plan de travail, de la manière suivante :

  1. Dans la sous-fenêtre Comparaison de la structure, si la liste de ressources (représentée par des flèches rouges) contient un conflit, sélectionnez ce dernier.
  2. Dans la zone Comparaison de texte de la vue Synchronisation, les données du plan de travail local sont présentées à gauche et celle de la branche du référentiel à droite. Examinez les différences entre les deux.
  3. Utilisez la zone de comparaison de texte pour fusionner les modifications. Vous pouvez copier des modifications à partir de la révision de référentiel du fichier vers la copie de plan de travail du fichier et sauvegarder le fichier fusionné du plan de travail (à l'aide du menu en incrustation de la sous-fenêtre de gauche).
  4. Une fois que vous êtes invité à fusionner les modifications distantes avec un fichier local, choisissez Marquer comme fusionné dans le menu en incrustation. Cela marque le fichier local comme ayant été mis à jour et permet la validation de vos modifications.

Remarque : Le contenu du référentiel n'est pas modifié lors de la mise à jour. Lorsque vous acceptez les modifications entrantes, ces dernières sont intégrées à votre plan de travail. Le référentiel n'est modifié que si vous validez des modifications sortantes.

Conseil : Dans la sous-fenêtre Comparaison de la structure, la sélection d'un ancêtre d'un ensemble de modifications entrantes permet d'exécuter l'opération sur tous les enfants appropriés. Par exemple, la sélection du dossier situé au sommet de la hiérarchie et de l'option Mettre à jour à partir du référentiel permet de traiter toutes les modifications entrantes non conflictuelles, à l'exclusion de toutes les autres modifications entrantes.

Avertissement : Le comportement de l'option Remplacer et mettre à jour décrite ci-dessus ne s'applique qu'au mode entrant de la vue Synchronisation. En mode entrant/sortant de la vue, le comportement des modifications entrantes et des conflits est identique, mais l'option retourne les modifications sortantes au contenu quel qu'il soit du référentiel. Soyez extrêmement prudent lors de l'utilisation de cette option en mode entrant/sortant.

Concepts connexes
Programmation en équipe avec CVS
Synchronisation avec un référentiel CVS

Tâches connexes
Validation
Résolution des conflits
Comparaison de ressources
Cycle de vie du contrôle des versions : ajouter et ignorer des ressources

Références connexes
CVS
Vue Synchronisation

 
Copyright IBM Corporation and others 2000, 2003