9-Update et Gestion des conflits

Rappel

Avant chaque commit , il est recommandé de faire un update. Pourquoi ? Pour être sûr que la version des fichiers que vous modifiez soit la dernière version du dépôt SVN

Les différents résultats après un update

  • A - Added : le fichier a été ajouté à votre copie de travail
  • D - Deleted : le fichier a été supprimé de votre copie de travail
  • U - Updated : le fichier que vous n'avez pas modifié a été modifié depuis la dernière fois que vous l'avez récupéré
  • G - Merged : vous et une autre personne a modifié le fichier et les deux versions ont été mergé avec succès
  • C - Conflicted : vous et une autre personne a modifié le fichier mais les deux versions n'ont pas pu être mergées

Résolution d'un conflit

Si votre fichier est en conflit, au moins 3 fichiers apparaissent en plus de votre fichier en conflit

  • fichier.txt.mine : le fichier que vous avez modifié
  • fichier.txt.rOldVersion : la révision de départ du fichier sur lequel vous avez fait vos modifications
  • fichier.txt.rNewVersion :la dernière révision du fichier qui a été committer par l'autre personnes avec laquelle vous êtes en conflit

Le fichier en conflit contient le merged avec les différences des deux versions.

Etapes pour résoudre le conflit

  • Il faut donc résoudre le conflit dans le fichier en conflit. A l'aide d'outil de merge de fichiers ou à la main
  • confirmer que le conflit est résolu
  • et toujours valider par un commit

mode console

  • éditer le fichier en conflit
  • puis
svn resolve --accept working fichier.txt
  • et pour finir
svn commit -m "résolution conflit"

Sous RapidSVN

  • clique droit sur le fichier, résolution interactive et modifier le fichier en conflit
  • clique droit sur le fichier, résoudre le conflit
  • puis clique droit, validation

Remarques

  • Il y a possibilité de résoudre le conflit de manière interactive en mode console… (non abordé dans cet atelier)
  • Pour résoudre un conflit, il est autorisé si besoin de parler avec l'autre personne avec qui vous êtes en conflit :)

Pratique : se mettre en conflit contre soi même

  • Récupérer une autre copie de travail en l'appelant wd2
  • Choisir un fichier et le modifier
  • commiter le changement
  • Aller dans la première copie de travail
  • Modifier le même fichier
  • Essayer de faire un commit (out of date)
  • Faire un update, le conflit apparait
  • résoudre le conflit
  • marqué le conflit résolu
  • puis valider

Félicitations, vous avez résolu le conflit !

précedent suivant

 
groupe-de-travail/jdev-2011/programme-planning-intervenants/programme/svn/update_conflits.txt · Dernière modification: 2011/09/28 22:38 par jean-michel.glorian@cesr.fr
 
Recent changes RSS feed Powered by PHP Powered by Pxxo Driven by DokuWiki