Mercurial merupakan sistem kontrol terdistribusi (mostly digunakan untuk source code management) yang "pintar". Mercurial adalah source code management (SCM) serupa dengan git yang digunakan untuk revision control system. Secara sejarah, Mercurial juga dibuat untuk menangani ketidakpuasan atas layanan Bitkeeper sebagaimana Linus membuat
Git. Mercurial dibuat Matt Mackall, seorang open source developer yang saat ini bekerja di Facebook. Mercurial hanya "kalah waktu" beberapa saat setelah Git diluncurkan, dan Linux kernel community memilih menggunakan Git daripada Mercurial. Namun, banyak komunitas opensource lebih memilih mercurial seperti
GNU Octave dan
Herwig.
Secara konsep, mercurial berbasis python yang menjadikannya lebih "lambat" sedikit daripada Git yang berbasis C/C++. Sebaliknya, Mercurial lebih pintar daripada Git stupid content tracker dalam hal mememasukkan file ke repository (hg add), sedangkan git memasukkan file (git add) ke "stage". Impactnya, kita cuma perlu sekali saja meng- "hg add" sebuah file dalam repo. Git perlu "git add" setiap kali ada perubahan.
Instalasi
Pertama kita perlu tahu apakah Mercurial sudah terinstall atau belum pada komputer (Ubuntu) kita. Cek dengan,
$ hg --version
Jika tidak ada nomor versinya maka belum terinstall. Mercurial bisa diinstall melalui apt-get ataupun pip install.
$ sudo apt-get install mercurial
atau
$ sudo pip install mercurial
Ya, seharusnya dengan salah satu perintah di atas, mercurial sudah bekerja di komputer kita. Saya lebih prefer dengan cara pertama (apt-get) daripada instalasi melalui python (pip). Cek lagi dengan "hg --version" untuk mengetahui berhasil tidaknya instalasi mercurial.
Repository setup
Siapkan beberapa file yang akan ditambahkan pada repository
$ mkdir nama-repo
$ cd nama-repo
Buat beberapa text untuk diimport pada repository. Misal buat tiga text file sebagai berikut
$ echo "foo" >> foo.txt
$ echo "bar" >> bar.txt
$ echo "baz" >> baz.txt
Untuk menghost repository di internet, kita menggunakan
bitbucket.org yang menyediakan layanan hg mercurial free unlimited (really!). Ada dua cara untuk membuat repo baru, bisa dari
bitbucket.org secara langsung, atau membuat secara local di PC kita kemudian mengimportnya.
Cara I