Workshop Bersama Samsul Ma'arif (Pengenalan Git)
Dalam workshop kali ini kami mendapat materi tentang GitA. Pengertian
Git adalah Version Control System (VCS) untuk melacak perubahan pada file komputer dan mengkoordinasikan pekerjaan pada file-file di antara banyak orang. Hal ini terutama digunakan untuk manajemen kode sumber dalam pengembangan perangkat lunak , namun dapat digunakan untuk melacak perubahan dalam sekumpulan file. Sebagai sistem kontrol revisi terdistribusi, ini ditujukan untuk kecepatan, integritas data, dan dukungan untuk alur kerja terdistribusi dan non linier.
VCS sendiri adalah Version control system adalah sebuah sistem yang mencatat setiap perubahan terhadap sebuah berkas atau kumpulan berkas sehingga pada suatu saat anda dapat kembali kepada salah satu versi dari berkas tersebut.
Terpusat vs Terdistribusi
Banyak orang mungkin melakukan pengontrolan versi dengan menyalin
berkas-berkas pada direktori yang berbeda. Cara ini sangat sederhana,
namun cenderung rentan terhadap kesalahan. Oleh karena itulah sistem
database versi diciptakan.
Version Control Local
Kelemahan dari sistem ini adalah pengembang perlu melakukan kolaborasi
dengan pengembang pada sistem lainnya. Untuk mengatasi permasalahan ini
maka dibangunlah Centralized Version Control System (CVCSs).
Walau demikian, sistem dengan tatanan seperti ini memiliki kelemahan serius. Kelemahan nyata yang direpresesntasikan oleh sistem dengan server terpusat. Jika server mati untuk beberapa jam, maka tidak ada seorangpun yang bisa berkolaborasi atau menyimpan perubahan terhadap apa yang mereka telah kerjakan.
Jika harddisk yang menyimpan basisdata mengalami kerusakan, dan salinan yang beran belum tersimpan, anda akan kehilangan setiap perubahan dari proyek kecuali snapshot yang dimiliki oleh setiap kolaborator pada komputernya masing-masing. VCS lokal juga mengalami nasib yang sama jika anda menyimpan seluruh history perubahan proyek pada satu tempat, anda mempunyai resiko kehilangan semuanya.
Lain halnya dengan DVCS (Distributed Version Control System) seperti
Git, Mercurial, Bazaar atau Darcs. Klien tidak hanya melakukan checkout
untuk snapshot terakhir setiap berkas, namun klien memiliki salinan
penuh dari repositori tersebut.
Jadi, jika server mati, dan sistem berkolaborasi melalui server
tersebut, maka klien manapun dapat mengirimkan salinan repositori
tersebut kembali ke server. Setiap checkout pada DVCS merupakan sebuah
backup dari keseluruhan data.
Perkembangan Git dimulai pada bulan April 2005, setelah banyak pengembang kernel Linux melepaskan akses ke BitKeeper , sistem manajemen source control management (SCM) yang sebelumnya mereka gunakan untuk mempertahankan proyek tersebut. Pemegang hak BitKeeper, Larry McVoy , telah menarik kembali penggunaan produk secara gratis setelah mengklaim bahwa Andrew Tridgell telah merekayasa ulang protokol BitKeeper.
hubungan antara komunitas pengembang Kernel Linux dan perusahaan komersil pembuat BitKeeper menjadi kurang baik, membuat status free-of-charge dicabut. Ini membuat komunitas pengembang Linux (dan terutama Linus Torvalds, pembuat Linux) akhirnya mengembangkan sendiri peralatan berdasarkan beberapa halyang dipelajari saat menggunakan BitKeeper. Beberapa tujuan sistem baru tersebut dibuat antara lain :
- Kecepatan
- Desain sederhana
- Dukungan penuh untuk pengembangan non-linear (ribuan cabang secara paralel)
- Terdistribusi secara penuh
- Dapat menangani proyek skala besar seperti Kernel Linux secara efisien (kecepatan dan ukuran data)
- Buat repositori
- Salin revisi
- Ubah, tambah, hapus
- Kirim perubahan ke repositori
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment