Différences
Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
|
hg_mercurial [Le 18/10/2007, 00:45] m3ta-x |
hg_mercurial [Le 14/08/2020, 23:09] (Version actuelle) Bissap [Voir aussi] Lien brisé remplacé par https://www.mercurial-scm.org/guide |
||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| - | {{tag>feisty Gutsy développement}} | + | {{tag>Xenial programmation}} |
| ---- | ---- | ||
| ====== Mercurial ( ou hg ) ====== | ====== Mercurial ( ou hg ) ====== | ||
| - | Mercurial est un système de ''~ versionning'' comme [[subversion]] ou [[cvs]]. | + | Mercurial est un [[wpfr>logiciel de gestion de versions]] permettant en particulier la gestion de version décentralisée (comme [[bzr]] ou [[git]]). Il est disponible sur plusieurs plate-formes : systèmes Unix, Windows, Mac OS X. |
| + | |||
| + | ===== Pré-requis ===== | ||
| + | |||
| + | * Disposer des [[:sudo|droits d'administration]]. | ||
| + | * Disposer d'une connexion à Internet configurée et activée. | ||
| ===== Installation ===== | ===== Installation ===== | ||
| + | [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>mercurial]]**. | ||
| - | Cliquer sur [[apt://mercurial|ce lien]] ou [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **mercurial** | + | ===== Configuration ===== |
| + | |||
| + | Le fichier de configuration de Mercurial par défaut est localisé dans **/etc/mercurial/hgrc**. Il affecte tous les utilisateurs du poste et doit être édité avec les droits de super-utilisateur. | ||
| + | |||
| + | Vous pouvez cependant configurer Mercurial pour votre session uniquement en créant un fichier de configuration dans votre **Dossier Personnel**, nommé ~/.hgrc .Dans ce cas, vous n'avez pas besoin des droits de [[sudo|super-utilisateur]] pour éditer ce fichier. | ||
| + | |||
| + | [[:tutoriel:comment_modifier_un_fichier|Éditez le fichier]] le fichier de configuration **/etc/mercurial/hgrc** ou **editor ~/.hgrc** et placez-y ces informations : | ||
| + | |||
| + | <file> | ||
| + | # system-wide mercurial configuration file | ||
| + | # See hgrc(5) for more information | ||
| + | |||
| + | # User Interface settings | ||
| + | [ui] | ||
| + | |||
| + | username=Your Name <your.email@yourdomain.com> | ||
| + | |||
| + | editor=vim | ||
| + | |||
| + | merge=meld | ||
| + | </file> | ||
| + | |||
| + | Il faut modifier ce fichier à son gré. | ||
| + | |||
| + | Pour le merge [[:tutoriel:comment_installer_un_paquet|Installez le paquet]] **[[apt>meld]]**. | ||
| ===== Utilisation ===== | ===== Utilisation ===== | ||
| - | ==== Télécharger des sources ==== | + | ==== Pour initialiser le dossier dans lequel nous allons travailler : ==== |
| - | hg clone http://.... | + | <code>cd /chemin/du/project/</code> |
| + | <code>hg init</code> | ||
| + | ==== Pour récupérer une copie des fichiers de travail s'il existe déjà dans ==== | ||
| - | ==== mettre à jour les sources ==== | ||
| - | Pour mettre à jour les sources (similaire à svn update ou cvs update) faites simplement: | + | <code>hg clone http://votredomaine.com:port depot-du-projet</code> |
| - | hg pull -u | + | "depot-du-projet" sert à spécifier le répertoire de destination des fichiers et dossiers qui seront téléchargés. Si aucune destination n'est spécifiée alors la destination aura le même nom que celle du répertoire du dépôt. |
| - | dans le dossier des sources. | + | ==== Pour prendre en compte des nouveaux fichiers dans le dépôt: ==== |
| + | |||
| + | |||
| + | <code>hg add</code> | ||
| + | |||
| + | ==== Pour enregistrer les changements effectués sur un fichier: ==== | ||
| + | |||
| + | |||
| + | <code>hg commit</code> | ||
| + | |||
| + | Attention, il faut bien renseigner les changements sinon les modifications ne seront pas prises en compte. | ||
| + | |||
| + | ==== Pour mettre les changements sur un dépôt distant: ==== | ||
| + | |||
| + | |||
| + | <code>hg push http://votredomaine.com:port depot-du-projet</code> | ||
| + | |||
| + | "depot-du-projet" sert à spécifier le répertoire de destination des fichiers et dossiers qui seront téléchargés. Si aucune destination n'est spécifiée alors la destination aura le même nom que celle du répertoire du dépôt. | ||
| + | |||
| + | ==== Pour récupérer les changements sur un dépôts distant: ==== | ||
| + | |||
| + | |||
| + | <code>hg pull http://votredomaine.com:port depot-du-projet</code> | ||
| + | |||
| + | "depot-du-projet" sert à spécifier le répertoire de destination des fichiers et dossiers qui seront téléchargés. Si aucune destination n'est spécifiée alors la destination aura le même nom que celle du répertoire du dépôt. | ||
| + | |||
| + | ==== Pour mettre à jour les sources (similaire à svn update ou cvs update) faites simplement : ==== | ||
| + | |||
| + | |||
| + | <code>hg pull -u</code> | ||
| + | |||
| + | |||
| + | ==== Pour fusionner les changements: ==== | ||
| + | |||
| + | |||
| + | <code>hg merge</code> | ||
| + | |||
| + | <code>hg commit</code> | ||
| + | |||
| + | ==== Pour créer un patch et exporter: ==== | ||
| + | |||
| + | |||
| + | <code>hg commit</code> | ||
| + | <code>hg export tip</code> | ||
| + | |||
| + | ==== Pour permettre l'export du dépôt via HTTP avec une interface navigable: ==== | ||
| + | |||
| + | |||
| + | <code>hg serve -n "Mon depot" -p <numérodeport></code> | ||
| + | ===== Voir aussi ===== | ||
| + | |||
| + | Vous pouvez consulter les sites suivants pour obtenir un complément d'information... | ||
| + | |||
| + | * **(en)** [[https://www.mercurial-scm.org/guide|Guide pour l'utilisation de Mercurial]] | ||
| ---- | ---- | ||
| - | //Contributeurs: [[utilisateurs:Fabien26]]// | + | |
| + | //Contributeurs : [[utilisateurs:pezzos]], [[utilisateurs:Fabien26]], [[utilisateurs:guigouz|Guigouz]]// | ||