Pr�sentation de Mercurial-------------------------Introduction````````````Mercurial_ g�re un ensemble distribu� d'entrep�ts contenant des arbres der�visions (chaque r�vision indique les changements � effectuer pour obtenir laversion suivante, et ainsi de suite). Localement, on dispose d'un entrep�tcontenant un arbre de r�visions, et d'un r�pertoire de travail. Il est possiblede mettre dans son r�pertoire de travail, une des versions issue de son entrep�tlocal, de la modifier puis de la verser dans son entrep�t. Il est �galementpossible de r�cuprer dans son entrep�t local des r�visions venant d'un autreentrep�t, ou d'exporter ses propres r�visions depuis son entrep�t local vers unautre entrep�t.A noter que contrairement � CVS/Subversion, on cr�e g�n�ralement un entrep�t parprojet � g�rer.Lors d'un d�veloppement collaboratif, on cr�e g�n�ralement un entrep�t centralaccessible � tout les d�veloppeurs du projet. Ces entrep�ts centraux servent der�f�rence. Selon ses besoins, chacun peut ensuite disposer d'un entrep�t local,qu'il faudra penser � synchroniser avec l'entrep�t central de temps � autre. Principales commandes`````````````````````* Cr�er un entrep�t local :: hg clone ssh://orion//home/src/prive/rep* Voir le contenu de l'entrep�t local (outil graphique en Tk) :: hg view* Ajouter un sous-r�pertoire ou un fichier dans le r�pertoire courant :: hg add rep* Placer dans son r�pertoire de travail une r�vision sp�cifique (ou la derni�re revision) issue de l'entrep�t local :: hg update [identifiant-revision] hg up [identifiant-revision]* R�cup�rer dans son entrep�t local, l'arbre de r�visions contenu dans un entrep�t distant (cette op�ration ne modifie pas le r�pertoire local) :: hg pull ssh://orion//home/src/prive/rep hg pull -u ssh://orion//home/src/prive/rep # �quivalent � pull + update* Voir quelles sont les t�tes de branches de l'entrep�t local si un `pull` a tir� une nouvelle branche :: hg heads* Verser le r�pertoire de travail dans l'entrep�t local (et cr�er une nouvelle r�vision) :: hg commit hg ci* Fusionner, avec la r�vision m�re du r�pertoire local, une autre r�vision issue de l'entrep�t local (la nouvelle r�vision qui en r�sultera aura alors deux r�visions m�res) :: hg merge identifiant-revision* Exporter dans un entrep�t distant, l'arbre de r�visions contenu dans son entrep�t local (cette op�ration ne modifie pas le r�pertoire local) :: hg push ssh://orion//home/src/prive/rep* Voir quelle sont les r�visions locales non pr�sentes dans un autre entrep�t :: hg outgoing ssh://orion//home/src/prive/rep* Voir quelle sont les r�visions d'un autre entrep�t non pr�sentes localement :: hg incoming ssh://orion//home/src/prive/rep* Voir quelle est la r�vision issue de l'entrep�t local qui a �t� sortie dans le r�pertoire de travail et modifi�e :: hg parent* Voir les diff�rences entre le r�pertoire de travail et la r�vision m�re de l'entrep�t local, �ventuellement permettant de les verser dans l'entrep�t local :: hg diff hg commit-tool hg ctBonnes pratiques````````````````* penser � faire un `hg pull -u` r�guli�rement et particuli�rement avant de faire un `hg commit`* penser � faire un `hg push` lorsque votre entrep�t contient une version relativement stable de vos modifications* si un `hg pull -u` a cr�� une nouvelle t�te de branche : 1. identifier l'identifiant de celle-ci avec `hg head` 2. fusionner avec `hg merge` 3. `hg ci` 4. `hg push`.. _Mercurial: http://www.selenic.com/mercurial/