Apa itu Version Controller System
Version control adalah system yang dapat menyimpan perubahan beberapa file selama kurun waktu sehingga dapat digunakan versi yang diinginkan. Jika seorang web designer menginginkan setiap versi perubahan layout untuk disimpan, maka Version Control System (VCS) adalah tools yang sangat tepat untuk digunakan.
VCS memungkinkan anda untuk mengembalikan file anda diposisi sebelumnya, mengembalikan projek diposisi sebelumnya, membandingkan tiap perubahan yang terjadi, mengetahui siapa yang merubah file dan apa perubahannya, dan lain sebagainya. Menggunakan VCS juga memungkinkan anda untuk mengembalikan posisi system ketika terjadi kekacauan atau file hilang.
Local Version Control System
Mayoritas orang menggunakan metode Version Control dengan cara meng-copy file ke folder lain. Metode tersebut membuat kita lupa file mana yang seharusnya kita gunakan atau salah melakukan update pada file yang tidak diperlukan. Untuk mengatasi hal tersebut, programmer telah mengembangkan Local Version Control System (LVCs) yang memiliki database sederhana yang berguna untuk menyimpan semua perubahan yang telah dilakukan.
Centralized Version Control Systems
Masalah selanjutnya yang kita hadapi adalah adanya kebutuhan untuk berkolaborasi dengan pengembang lainnya. Adanya beberapa programmer yang mengembangkan suatu aplikasi secara bersamaan memungkinkan terjadinya kesalahpahaman (file programmer A ditimpa oleh file programmer B).
Program yang digunakan untuk mengatasi masalah tersebut yakni Centralized Version Control System (CVCS). CVSC hampir mirip dengan CVS yang memiliki satu server yang berisikan semua version file, dan beberapa client yang dapat checkout file ke server pusat. Selama beberapa tahun CVCS telah menjadi standard untuk version control.
Dengan menggunakan CVCS, memungkinkan kita untuk mendapatkan banyak manfaat. Salah satunya, semua yang memiliki akses atau terlibat dalam projek dapat mengetahui apa yang dikerjakan masing-masing anggota. Administrator memiliki kontrol terhadap siapa yang berhak untuk melakukan sesuatu, selain itu juga lebih mudah untuk mengkontrol CVCS daripada database lokal pada masing-masing klien.
Akantetapi, CVCS juga memiliki kekurangan. Yang paling mendasar adalah adanya single point of failure yang diakibatkan karena centralized server. Jika server tersebut mati dalam satu jam, maka semua tim projek yang menggunakan CVCS tersebut tidak dapat menyimpan perubahaan yang telah mereka lakukan. Jika hardisk server central tersebut corrupt atau rusak, dan backup belum dilakukan, maka hamper semua data history projek akan hilang, kecuali snapshot terakhir yang ada pada masing-masing klien.
Distributed Version Control Systems
Disinilah munculnya model baru, yaitu Distributed Version Control Systems (DVCS) yang melengkapi kelemahan CVCS. Pada DVCS (seperti GIT, Mercurial, Bazaar, dsb), klien tidak hanya melakukan checkout pada versi file terakhir, namun seluruh copy dari repository. Oleh karena itu, jika server mati atau hardisk corrupt, maka repository yang berada pada client dapat dicopy kan ke server untuk memulihkan server. Tiap clone merupakan full backup dari semua data.
Kebutuhan akan digital IT sangat dibutuhkan dalam kegiatan sehari-hari, Bead IT Consultant merupakan pilihan tepat sebagai partner anda,kunjungi website kami dengan klik link ini : www.beadgrup.com