Perbedaan Antara Git dan SVN

Pernah dengar Git dan SVN? Jika anda belum pernah mendengarnya dan ingin mempelajari apa itu Git dan SVN maka artikel ini sangat cocok untuk kalian yang membacanya. Saya akan sedikit mengenalkan tentang Git dan SVN, Oke langsung saja.

Apa Itu Git?

git-logo

Git adalah sistem kendali kode sumber (revision control system, atau version control system, atau VCS). Git pertama kali didesain dan dikoding oleh Bapak Linux sendiri, Linus Torvalds, tahun 2005 untuk menggantikan VCS komersial BitKeeper yang kala itu digunakan untuk mengatur kode sumber Linux. Karena tidak menemukan sistem lain yang lebih cepat untuk menangani kode sebesar kernel Linux, maka Linus menulis VCS sendiri. Karenanya, salah satu fitur utama git sejak awal adalah kecepatannya. Berbeda dari sistem kode sumber yang sudah terlebih dulu popular sebelumnya yaitu CVS dan Subversion, git tidak bersifat tersentralisasi melainkan terdistribusi. Artinya, setiap pengembang tidak hanya menyimpan working copy di komputer lokalnya, tapi juga menyimpan repositori, yang berisi sejarah lengkap perubahan. Sementara di sistem tersentralisasi, hanya ada satu repositori tunggal (umumnya di server yang dapat diakses oleh semua pengembang lewat jaringan)

Karena masing-masing pengembang memiliki repositori, maka komit dapat dilakukan secara offline di repository lokal di komputer sendiri, tidak harus terhubung ke repositori sentral di jaringan. Saat ingin bertukar/mensinkronisasi hasil kerja dengan pengembang lainlah, baru kita terkonek ke jaringan dan melakukan merging atau patching. Contoh program dari Git adalah gibak, bup dan eigen class.Konsep Git dari awal adalah pada kecepatannya dan sistemnya terdistriusi yang memungkinkan untuk menjadikan Git bukan hanya digunakan oleh programmer untuk memanajemem kode sumber program, tetapi juga dapat digunakan oleh “pemakai biasa” untuk mengatur berbagai jenis data. Oleh karena kecepatannya, maka Git sangat bagus dalam kompresi data dibandingkan dengan VCS lain.

Baca juga: Belajar Git, Perlu Nggak Sih?

Hampir semua operasi dilakukan secara local

Operasi pada Git hanya membutuhkan berkas-berkas dan resource lokal – tidak ada informasi yang dibutuhkan dari komputer lain pada jaringan. Jika kalian terbiasa dengan VCS terpusat dimana kebanyakan operasi memiliki overhead latensi jaringan, aspek Git satu ini akan membuat anda berpikir bahwa para dewa kecepatan telah memberkati Git dengan kekuatan. Karena anda memiliki seluruh sejarah dari proyek di lokal disk anda, dengan kebanyakan operasi yang tampak hampir seketika.

Keunggulan dari Git :

  •  Design yang sederhana
  •  Mendukung dalam pengembangan non-linear(pengembangan paralel)
  •  Sistem terdistribusi, peer to peer
  •  Mendukung dalam proyek besar seperti Kernel Linux
  •  Akses menggunakancommand line (tidak harusclient-server)
  •  Penyimpanan murni berbasis file (tidak menggunakan database/SQL)

Kelemahan dari Git :

  •   Tidak Optimal untuk pengembang tunggal
  •   Dukungan untuk Windows terbatas dibandingkan Linux

Baca juga: Gitlab, Layanan Penyimpan Git gratis dan Open Source

Apa Itu SVN?

subversion-logo

Subversion, atau dikenal juga dengan nama SVN, adalah suatu perangkat lunak sumber terbuka pengontrol versi yang dapat mengatur proses pengembangan perangkat lunak yang dilakukan oleh suatu kelompok pemrogram yang terpisah menjadi runut dan teratur. Subversion diciptakan oleh CollabNet yang memegang merek dagang “Subversion” dan sampai sekarang masih memelihara proyek ini. Subversion tersedia dalam versi Linux, Windows, FreeBSD, OpenBSD, Solaris, Mac OS X dan OS/400. Subversion dirancang khusus sebagai pengganti modern dari CVS. Untuk mencegah corrupt dalam database, SVN menggunakan konsep operasi atom. Perubahan yang dilakukan terhadap sumber diterapkan atau tidak, yang berarti tidak ada perubahan parsial pada sumber aslinya. Contoh program dari SVN ini adalah tortoisesvn.

fungsi dasar dari SVN (Sub Version) tersebut sebagai berikut:

  • Mencatat perubahan code yang terjadi dalam membuat perubahan.
  • Dapat melihat seluruh historical pada data.
  • Kemampuan melakukan fungsi undo sehingga bisa mengembalikan kondisi program sebelum error itu terjadi.
  • File sharing, yang memungkinkan satu file dapat dikerjakan oleh beberapa orang (team) dalam waktu bersamaan.

Keunggulan dari SVN :

  • Sistem baru berdasarkan CVS
  • Menerapkan operasi atom
  • Murah dalam pengoperasian
  • Sistem terpusat, tidak mendukung peer to peer
  • Berbagai macam plug-in untuk IDE

Kekurangan dari SVN :

  • Masih ada bug dalam renam file maupun direktori
  • Perintah manajemen repositori tidak banyak
  • Kecepatan kompresi data lambat
  • Ketika server down, maka client tidak dapat mengakses.

Baca juga: 7 Aplikasi Desktop untuk Version Control System

 Apa itu Version Control ?

Dan untuk tambahan, Apakah sebenarnya version control itu, dan kenapa kita harus tahu? Version control adalah sebuah sistem yang mencatat semua perubahan yang terjadi pada file atau sekumpulan file seiring dengan waktu, jadi dengan demikian kamu dapat memanggil versi spesifiknya dilain waktu. Sebagai contoh, file yang akan kamu kontrol adalah kode-kode program, meskipun pada umumnya kamu dapat mengontrol jenis file apapun yang ada di komputer mu.Jika kamu seorang desainer grafis, desainer web atau bahkan seorang mahasiswa yang sedang menggarap skripsi dan ingin menyimpan versi dari gambar-gambar, dokumen, atau layout (yang tentunya paling sering kamu perlukan), maka sebuah Version Control System (VCS) adalah suatu hal yang sangat bijak untuk digunakan.

Sekian dari pembahasan saya mengenai Perbedaan Antara Git dan Svn semoga pembahasan saya berguna dan menambah ilmu bagi anda yang membacanya,, Terima kasih

 

Referensi

https://en.wikipedia.org/wiki/Apache_Subversion https://git-scm.com/book/id/v1 https://en.wikipedia.org/wiki/Version_control

Dilihat 7058 kali

Is this helpful?

Share This Post