“Mercurial est un système de gestion de versions permettant en particulier la gestion de version décentralisée. Il est disponible sur plusieurs plate-formes : systèmes Unix, Windows, Mac OS X.
Le créateur et principal développeur de Mercurial est Matt Mackall. L'ensemble des sources du logiciel est sous la GNU GPL version 2. C'est un logiciel libre.”
source: http://fr.wikipedia.org/wiki/Mercurial
nb: le petit nom est hg (formule chimique du mercure)
appellé à remplacer svn
http://mercurial.selenic.com/ http://mercurial.selenic.com/guide/
hg init (project-directory) cd (project-directory) (add some files) hg add hg commit -m 'Initial commit'
cd [pathDeVotreProjet]
hg diff hg log -p -r 1 hg status hg commit -m "changes" hg update tip
créer un fichier .hgignore à la racine de votre repository
ex. avec cake:
tmp/*
et c'est tout!
cd YourProjectLocal
cd .hg/
To update your sources, you can use:
cd main hg pull -u
Le top: mercurial sur un serveur. C'est assez facile, si l'on ne SUIT PAS la documentation.
Il faut installer mercurial bien sûr, puis le client server:
sudo apt-get install mercurial mercurial-common mercurial-server
Ensuite modifier les config apache:
vi /etc/apache2/sites-enabled/000-default
Alias /code /var/www/hg/tools <Directory /var/www/hg/tools> DirectoryIndex index.cgi AddHandler cgi-script .cgi Options ExecCGI Order allow,deny Allow from all </Directory>
restarter apache:
sudo /etc/init.d/apache2 reload
Si ça coince vérifier les modules perl et python pour apache
Faudrait encore faire la partie https / sécurisation… pour une autre fois! Pour le moment j'ai simplement mis un htaccess et ça joue nickel
pour mettre des commentaires, cd .hg à la racine, touch hgrc vi hgrc
[web] contact = fradeff@gmail.com description = Module commandes "Jardins de Cocagne" #name = Jardins de Cocagne
créer un .hgignore à la racine
y mettre ce qu'on veut exclure, ex. avec cake:
tmp/*
peut être utile aussi pour éviter de stocker des fichiers de config avec des infos sensibles (logins, mots de passes etc.): dans ce cas, créer un fichier bidon à modifier par l'utilisateur qui télécharge l'application par hg
ex.
todo: faire une doc pour cake
cd /usr/share/mercurial/templates/ cp -pR paper /home/radeff/hg/gitweb cd /home/radeff/hg/gitweb replace "http://mercurial.selenic.com/" "http://localhost/hg/" -- *
et dans .hgwebconfig:
[web] allow_archive = gz, zip, bz2 #style = gitweb style = /home/radeff/hg/gitweb allow_push = * push_ssl = false