Mercurial
De Ensiwiki.
| Mercurial
| |
|---|---|
| Environnement | Windows,MacOS,Linux
|
| Type | Gestionnaire de versions |
| Licence | GPLv2
|
| Site Web | http://www.selenic.com/mercurial/ |
Sommaire |
Présentation
Mercurial est un système de gestion de versions. Il permet en particulier la gestion de version décentralisée. Il est disponible sur plusieurs plate-formes : systèmes Unix, Windows, Mac OS X.
Il est écrit principalement en Python. Mercurial a été créé pour s'utiliser via des lignes de commande. Toutes les commandes commencent par hg, en référence au symbole chimique du mercure. Ses principales caractéristiques sont[1]., entre autres :
- sa rapidité et sa capacité à gérer les gros projets ;
- son utilisation sans nécessiter un serveur ;
- son fonctionnement complètement distribué ;
- sa robustesse dans la gestion des fichiers ASCII et binaires ;
- sa gestion avancée des branches et des fusions ;
- son interface web intégrée.
Le créateur et principal développeur de Mercurial est Matt Mackall. L'ensemble des sources du logiciel est sous la GNU GPL. C'est un logiciel libre.
Si vous hésitez entre Mercurial et Git, lisez ce comparatif des philosophies des deux gestionnaires.
Les principales commandes de Mercurial
| Commande | Signification |
|---|---|
| add | Ajoute tout ou une partie des fichiers pour le prochain commit |
| annotate | Montre l'origine de chaque ligne distincte dans un fichier texte (auteur, date, révision...) |
| archive | Extrait une versions sans les méta-données depuis le dépôt |
| clone | Fait une copie du dépôt d'un projet existant |
| commit (ci) | Enregistre une partie ou toutes les modifications locales dans le dépôt créant ainsi une nouvelle version |
| diff | Calcule la différence entre deux versions |
| export | Récupère les en-tête et les différences pour une ou plusieurs versions |
| init | Créé un dépôt dans le répertoire donné en paramètre (répertoire courant sans paramètre) |
| log | Donne l'historique des versions d'un dépôt entier ou de fichiers donnés |
| manifest | Donne la liste des fichiers contenus dans une version donnée |
| merge | Fusionne le répertoire de travail avec une autre version |
| parents | Montre les parents de la version de travail en cours ou d'une version donnée |
| pull | Récupère les changements depuis un dépôt donné |
| push | Exporte les changements vers un dépôt donné |
| remove (rm) | Supprime tout ou une partie des fichiers pour le prochain commit |
| revert | Revient à une version donnée de fichiers ou de répertoires |
| serve | Rend visible le contenu du dépôt via HTTP |
| status (st) | Montre les fichiers qui ont subi des changement dans le répertoire de travail |
| strip | Efface une version ainsi que toutes les versions suivantes sur une branche donnée |
| tag | Associe un marqueur (une étiquette, un label) à une version donnée |
| tags | Liste tous les marqueurs d'un dépôt |
| update (up/checkout/co) | Met à jour ou fusionnne le répertoire de travail |
| verify | Vérifie l'intégrité d'un dépôt |
À l'Ensimag
Pour l'heure, hg est installé sur telesun et ensibm, manifestez-vous par exemple auprès de obey . liu @ ensimag . imag . fr si vous souhaitez une installation sur une autre machine.
Si vous souhaitez utiliser Hg pour vos travaux collaboratifs (TP, projets), vous n'aurez pas besoin de vous embêter avec les ACLs. Suivez les instructions pour établir un SharedSSH selon la méthode hg-ssh sur l'un de vos comptes (i.e. permettre à votre binôme de faire des push vers votre compte sans lui permettre de s'y logger).
Installation chez vous
L'installation est tout ce qu'il y a de plus classique. Si vous utilisez une distribution Linux ou un autre système doté d'un gestionnaire de paquets, installez simplement mercurial (paquet "mercurial" sous Ubuntu ou Debian). Sinon, rendez vous sur la page de téléchargements du site officiel.
Premiers pas
- Un QuickStart pour les impatients.
- Le tutorial officiel.
- Ou directement vous attaquer au manuel officiel
