Mercurial vs Git

Git dan Lincah keduanya adalah alat perangkat lunak gratis untuk GitLincahServer web bawaan Tidak Iya Kait sebelum / sesudah acara Iya Iya Konversi akhir baris Iya Iya Tag Iya Iya Dukungan internasional Sebagian Iya Ganti nama file Ya (tersirat) Iya Gabungkan nama file Iya Iya Tautan simbolik Iya Iya Sumber terbuka Iya Iya Revisi yang ditandatangani Iya Iya ID Revisi Hash SHA-1 Bilangan, hash SHA-1 Atom melakukan Iya Iya Model sejarah Foto Set perubahan Ukuran repositori O (patch) (notasi O Besar) O (patch) (notasi O Besar) Model konkurensi Menggabungkan Menggabungkan Sistem operasi Seperti Unix, Windows, Mac OS X Seperti Unix, Windows, Mac OS X Pementasan area Iya Tidak Cabang eksternal Iya Tidak Biaya Gratis Gratis RCS Keyword Ya, tapi tidak disarankan melalui plugin yang dibundel Checkout dangkal / klon Iya Ekstensi Bugzilla Pelacakan nama file / dir Ganti nama deteksi Ganti nama pelacakan Kasir / klon subdirektori Tidak Tidak Model repositori Didistribusikan Didistribusikan Pemeliharaan izin Eksekusi hanya bit Eksekusi hanya bit Protokol jaringan custom, custom over ssh, rsync, HTTP, bundel email HTTP, custom over ssh, bundel email (dengan plugin standar) Dikembangkan oleh Junio ​​Hamano, Linus Torvalds Matt Mackall Dikelola oleh Junio ​​Hamano Matt Mackall Ditulis dalam C, Bourne Shell, Perl Python dan C Gabungkan pelacakan Iya Iya Integrasi Bug Tracker 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 Seperti Unix, Windows, Mac OS X Pengantar (dari Wikipedia) Git adalah kontrol revisi yang didistribusikan secara gratis, atau proyek manajemen kode sumber perangkat lunak dengan penekanan pada kecepatan. Git pada awalnya dibuat oleh Linus Torvalds untuk pengembangan kernel Linux. Mercurial adalah alat kontrol revisi lintas platform yang didistribusikan untuk pengembang perangkat lunak. Ini terutama diimplementasikan menggunakan bahasa pemrograman Python, tetapi termasuk implementasi diff biner yang ditulis dalam C. Tipe Kontrol revisi Kontrol revisi

Isi: Mercurial vs Git

  • 1 Tujuan desain
  • 2 Proyek menggunakan Git vs Proyek menggunakan Mercurial
  • 3 Git vs Porturial Portability
  • 4 Antarmuka Pengguna untuk Git vs Mercurial
  • 5 Video Terkait
  • 6 Referensi

Tujuan desain

Sasaran desain utama Mercurial meliputi kinerja tinggi, skalabilitas, menjadi pengembangan kolaboratif tanpa server, terdistribusi penuh, penanganan yang kuat untuk file teks biasa dan file biner, dan kemampuan percabangan dan penggabungan yang canggih, namun tetap secara konsep sederhana. Ini termasuk antarmuka web terintegrasi.

Salah satu tujuan desain utama Linus Torvalds untuk Git adalah kecepatan dan efisiensi operasi. Kriteria desain lainnya termasuk perlindungan kuat terhadap korupsi, baik disengaja atau berbahaya.

Proyek menggunakan Git vs Proyek menggunakan Mercurial

Beberapa proyek perangkat lunak profil tinggi sekarang menggunakan Git untuk kontrol revisi, terutama kernel Linux, Perl, Samba, Server X.org, Qt (toolkit), pengembangan inti One Laptop per Child (OLPC), kerangka kerja web Ruby on Rails, VLC , YUI, Merb, Anggur, SWI Prolog, GNOME, GStreamer, DragonFly BSD dan platform seluler Android.

Proyek yang menggunakan Mercurial meliputi Adblock Plus, Aldrin, Audacious, server IMAP Dovecot, GNU Octave, NxOS, Nuxeo, Growl, perangkat lunak wiki MoinMoin, Mozilla, Mutt (klien email), Netbeans (IDE), OpenJDK, Python, SAGE, OpenSolaris dari Sun Microsystem dan Perangkat Lunak OpenSource Oracle seperti Btrfs.

Git vs Porturial Portability

Mercurial awalnya ditulis untuk dijalankan di Linux. Ini telah porting ke Windows, Mac OS X, dan sebagian besar sistem mirip Unix lainnya. Mercurial pada dasarnya adalah program baris perintah.

Git terutama dikembangkan di Linux, tetapi dapat digunakan pada sistem operasi mirip 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 installer yang dapat diunduh yang siap untuk pengujian. 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 Mercurial

Semua operasi Mercurial dipanggil sebagai opsi kata kunci untuk program drivernya hg, referensi ke simbol kimia unsur merkuri. Antarmuka GUI untuk Mercurial termasuk Hgk (Tcl / Tk). Ini diimplementasikan sebagai ekstensi Mercurial, dan merupakan bagian dari versi resmi. Penampil ini menampilkan grafik asiklik langsung dari perubahan repositori Mercurial. Penampil ini dapat dipanggil melalui perintah 'tampilan hg', jika ekstensi diaktifkan. hgk pada awalnya didasarkan pada alat serupa untuk git yang disebut gitk. Ada pengganti hgk bernama hgview yang ditulis dengan python murni dan menyediakan antarmuka gtk dan qt.

Alat Mercurial terkait meliputi:

  • Alat terkait untuk menggabungkan termasuk (h) gct (Qt) dan Meld.
  • Ekstensi konversi memungkinkan impor dari repositori CVS, Darcs, git, GNU Arch, Monotone, dan Subversion.
  • Netbeans IDE mendukung Mercurial dari Versi 6.
  • Tortoise Hg menyediakan antarmuka menu klik kanan yang ramah pengguna dan Windows.
  • VisualHG adalah plugin penyedia kontrol sumber Mercurial untuk MS Visual Studio 2008.
  • Mercurial Eclipse adalah plugin penyedia tim Eclipse untuk Eclipse 3.3 dan yang lebih baru.

Alternatif untuk menjalankan Git menggunakan GUI meliputi:

  • git-cvsserver (yang mengemulasi server CVS, memungkinkan penggunaan klien Windows CVS)
  • Klien Git berbasis Eclipse IDE, berdasarkan implementasi Java murni internal Git: egit
  • Dukungan NetBeans IDE untuk Git sedang dalam pengembangan.
  • Ekstensi Windows Explorer (mirip TortoiseCVS / TortoiseSVN) dimulai di TortoiseGit dan Git Extensions yang merupakan ekstensi penjelajah serta GUI mandiri dan Plug-in Visual Studio 2008

Video yang berhubungan

Referensi

  • wikipedia: Git_ (perangkat lunak)
  • wikipedia: Mercurial_ (perangkat lunak)
  • Pengembang Mercurial Martin Geisler membandingkan fitur Git dan Mercural secara mendalam