Mercurial
Un article de Wikipédia, l'encyclopédie libre.
Mercurial est un logiciel de gestion de version distribué. Il est disponible sur plusieurs plate-formes : Unix-like, 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 entre autre :
- 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 Licence publique générale GNU.
Sommaire |
[modifier] Informations techniques
Comme Git et Monotone, Mercurial utilise une fonction de hachage SHA-1 pour identifier ses versions.
Mercurial utilise un protocole réseau efficace basé sur HTTP.
Mercurial est disponible sur les environnements Windows, Mac OS X, et sur la plupart des systèmes d'exploitation du type Unix.
[modifier] Historique
Mackall mit à disposition Mercurial pour la première fois le 19 avril 2005, seulement quelques jours après que le développement de Git ait commencé.[1]
La dernière version est la 0.9.3, sortie le 17 décembre 2006.
[modifier] Les principales commandes de Mercurial
Commande | Signification |
---|---|
add | Ajoute tout ou une partie des fichiers pour le prochain commit |
annotate | Montre les différences entre 2 versions ligne par ligne |
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 | 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 |
[modifier] Logiciels clients
Outre l'outil en ligne de commande, plusieurs logiciels pourvus d'interface graphique existent, en voici quelques-uns :
[modifier] Projets utilisateurs
Voici une liste de quelques projets qui utilisent Mercurial (Mercurial en fait aussi partie) : [2]
- ALSA
- Conary
- e2fsprogs
- GalaxyMage
- MoinMoin
- OpenSolaris
- SAGE
- wmii
- Xen
- V4L
[modifier] Voir aussi
[modifier] Liens externes
- (en) Wiki officiel du projet Mercurial
- (en) Mercurial : une alternative à git de LWN.net
- (en) Meld : Site Officiel
- (en) (h)gct