Mercurial vs. Git
- 5019
- 1635
- Grant Zieme
Git Dan Lincah keduanya adalah alat perangkat lunak gratis untuk kontrol revisi terdistribusi dan manajemen kode sumber perangkat lunak.
Baik Git dan Mercurial dimulai pada waktu yang hampir bersamaan dengan tujuan yang sama. Stimulus langsung adalah pengumuman pada bulan April 2005 oleh Bitmover bahwa mereka menarik versi gratis Bitkeeper, yang telah digunakan untuk persyaratan kontrol versi proyek kernel Linux. Pencipta Mercurial Matt Mackall memutuskan untuk menulis sistem kontrol versi terdistribusi sebagai pengganti untuk digunakan dengan kernel Linux. Mackall pertama kali mengumumkan Mercurial pada 19 April 2005.
Git diciptakan oleh Linus Torvalds untuk pengembangan kernel Linux, dengan penekanan untuk menjadi cepat. Pengembangan Git dimulai pada 3 April 2005. Proyek ini diumumkan pada 6 April, dan menjadi tuan rumah pada 7 April. Penggabungan pertama beberapa cabang dilakukan pada 18 April.
Proyek kernel linux memutuskan untuk menggunakan git daripada lincah, tetapi lincah sekarang digunakan oleh banyak proyek lain.
Grafik perbandingan
Perbedaan - Persamaan -Git | Lincah | |
---|---|---|
|
| |
Server web bawaan | TIDAK | Ya |
Hooks pra/pasca-event | Ya | Ya |
Konversi akhir garis | Ya | Ya |
Tag | Ya | Ya |
Dukungan Internasional | Sebagian | Ya |
Ganti nama file | Ya (implisit) | Ya |
Menggabungkan ganti nama file | Ya | Ya |
Tautan simbolik | Ya | Ya |
Open source | Ya | Ya |
Revisi yang ditandatangani | Ya | Ya |
ID Revisi | Hash sha-1 | Angka, hash-1 hash |
Atomik berkomitmen | Ya | Ya |
Model Sejarah | Foto | Perubahan |
Ukuran repositori | O (tambalan) (notasi besar O) | O (tambalan) (notasi besar O) |
Model konkurensi | Menggabungkan | Menggabungkan |
Sistem operasi | Unix-Like, Windows, Mac OS X | Unix-Like, Windows, Mac OS X |
Area pementasan | Ya | TIDAK |
Cabang Eksternal | Ya | TIDAK |
Biaya | Bebas | Bebas |
Kata kunci RCS | Ya, tapi tidak direkomendasikan | melalui plugin yang dibundel |
Checkout / klon dangkal | Ya | Ekstensi Bugzilla |
Pelacakan Nama File/Dir | Ganti nama deteksi | Ganti nama pelacakan |
Checkout/klon subdirektori | TIDAK | TIDAK |
Model Repositori | Didistribusikan | Didistribusikan |
Menjaga izin | Eksekusi Bit saja | Eksekusi Bit saja |
Protokol jaringan | Kustom, Kustom Over SSH, RSYNC, HTTP, Bundel Email | Http, kustom over ssh, bundel email (dengan plugin standar) |
Dikembangkan oleh | Junio Hamano, Linus Torvalds | Matt Mackall |
Dikelola oleh | Junio Hamano | Matt Mackall |
Tertulis di | C, Bourne Shell, Perl | Python dan c |
Gabungkan pelacakan | Ya | Ya |
Integrasi pelacak bug | TIDAK | Trac (via plugin) |
Lisensi | Gpl v2 | Gpl v2 |
Situs web | git-scm.com | www.selenic.com/Mercurial |
Os | POSIX, Dukungan Windows yang lebih buruk | Unix-Like, Windows, Mac OS X |
Pendahuluan (dari Wikipedia) | GIT adalah kontrol revisi terdistribusi gratis, atau proyek manajemen kode sumber perangkat lunak dengan penekanan untuk menjadi cepat. Git awalnya diciptakan oleh Linus Torvalds untuk pengembangan kernel Linux. | Mercurial adalah alat kontrol revisi lintas platform, terdistribusi untuk pengembang perangkat lunak. Ini terutama diimplementasikan menggunakan bahasa pemrograman Python, tetapi termasuk implementasi diff biner yang ditulis dalam C. |
Jenis | Kontrol revisi | Kontrol revisi |
Tujuan desain
Sasaran desain utama Mercurial meliputi kinerja tinggi, skalabilitas, menjadi pengembangan kolaboratif tanpa server, yang didistribusikan sepenuhnya, penanganan yang kuat dari teks biasa dan file biner, dan kemampuan bercabang dan penggabungan canggih, sambil tetap sederhana secara konseptual sederhana secara konseptual secara konseptual secara konseptual secara konseptual secara konseptual. Itu termasuk antarmuka web terintegrasi.
Salah satu tujuan desain utama Linus Torvalds untuk GIT adalah kecepatan dan efisiensi operasi. Kriteria desain lainnya termasuk perlindungan yang kuat terhadap korupsi, baik yang tidak disengaja atau jahat.
Proyek Menggunakan Proyek GIT VS Menggunakan Mercurial
Beberapa proyek perangkat lunak profil tinggi sekarang menggunakan git untuk kontrol revisi, terutama kernel linux, perl, samba, x.ORG Server, QT (Toolkit), satu Laptop per Pengembangan Inti Anak (OLPC), Ruby on Rails Web Framework, VLC, YUI, Merb, Wine, SWI Prolog, Gnome, Gstreamer, DragonFly BSD dan Android Mobile Platform.
Proyek yang Menggunakan Mercurial Termasuk Adblock Plus, Aldrin, Audious, Dovecot IMAP Server, GNU Octave, NXOS, Nuxeo, Growl, Moinmoin Wiki Software, Mozilla, Mutt (Klien Email), NetBeans (IDE), OpenJDK, Python, Sage, Sun Microsystem's Opensolol dan perangkat lunak OpenSource Oracle seperti BTRFS.
Portabilitas git vs
Mercurial awalnya ditulis untuk dijalankan di Linux. Ini telah diangkut ke Windows, Mac OS X, dan sebagian besar sistem seperti Unix lainnya. Mercurial terutama merupakan program baris perintah.
GIT terutama dikembangkan di Linux, tetapi dapat digunakan pada sistem operasi seperti UNIX lainnya termasuk BSD dan Solaris.
Git juga berjalan di windows. Ada dua varian:
- Port Microsoft Windows asli, yang disebut MsySgit mendekati penyelesaian. Pada Februari 2009, ada penginstal yang dapat diunduh yang siap untuk menguji beberapa perintah belum tersedia dari GUI, dan harus dipanggil dari baris perintah.
- Git juga berjalan di atas Cygwin (lapisan emulasi POSIX), meskipun terasa lebih lambat, terutama untuk perintah yang ditulis sebagai skrip shell.
Antarmuka pengguna untuk git vs merkuri
Semua operasi Mercurial dipanggil sebagai opsi kata kunci untuk program driver HG, referensi ke simbol kimia dari elemen merkuri. Antarmuka GUI untuk Mercurial termasuk HGK (TCL/TK). Ini diimplementasikan sebagai ekstensi lincah, dan merupakan bagian dari versi resmi. Penampil ini menampilkan grafik asiklik yang diarahkan dari perubahan repositori mercurial. Penampil ini dapat dipanggil melalui perintah 'tampilan hg', jika ekstensi diaktifkan. HGK awalnya didasarkan pada alat serupa untuk git yang disebut gitk. Ada penggantian HGK bernama HGView yang ditulis dalam Python murni dan menyediakan antarmuka GTK dan QT.
Alat Mercurial Terkait termasuk:
- Alat terkait untuk penggabungan termasuk (h) gct (qt) dan meld.
- Ekstensi konversi memungkinkan impor dari cvs, darcs, git, lengkungan gnu, monoton dan repositori subversi.
- NetBeans IDE mendukung Mercurial dari versi 6.
- Tortoise HG menyediakan antarmuka menu klik kanan yang ramah pengguna Windows.
- VisualHG adalah plugin penyedia kontrol sumber kelas untuk MS Visual Studio 2008.
- Mercurial Eclipse adalah plugin penyedia tim gerhana untuk Eclipse 3.3 dan lebih baru.
Alternatif untuk menjalankan git menggunakan GUI termasuk:
- Git-CVSServer (yang meniru server CVS, memungkinkan penggunaan klien Windows CVS)
- Klien Git Berbasis Ide Eclipse, berdasarkan implementasi Java murni dari internal Git: EGIT
- Dukungan NetBeans IDE untuk GIT sedang dalam pengembangan.
- Ekstensi Windows Explorer (A Tortoisecvs/Tortoisesvn-Lookalike) dimulai di ekstensi Tortoisegit dan Git yang merupakan ekstensi penjelajah serta GUI mandiri dan plug-in Visual Studio 2008 2008 2008
Video Terkait