Halo
Sobat, ketika sedang mengerjakan sebuah proyek laporan ataupun proyek pembuatan
aplikasi kita membutuhkan platform untuk menyimpan data proyek tersebut. Akan
tetapi, karena banyaknya file tersebut kita menjadi bingung dalam
memanajemennya. Terlebih jika file tersebut memiliki banyak revisi. Tidak
jarang juga file tersebut menjadi hilang karena tidak dimanajemen dengan baik.
Oleh
karena itu, dalam menyimpan maupun memanajamen file-file proyek yang penting
kita membutuhkan sebuah platform yang bisa mengelolahnya secara mudah. Platform
tersebut adalah Git dan Github.
Keduanya
dikembangkan oleh perusahaan yang sama, namun memiliki fitur yang berbeda.
Platform tersebut dibangun dengan konsep version control system atau VCS
dan dimungkinkan juga untuk melakukan kolaborasi dengan beberapa orang. Oleh
karena itu, platform ini sangat cocok sekali digunakan untuk memanajemen file
proyek.
Pengertian
Version Control System
Untuk
dapat memahami Git dengan mudah, maka harus mengetahui terlebih dahulu mengenai
version control system sebab Git dibangun dengan konsep tersebut.
Berdasarkan pengertiannya, Version Control System atau VCS merupakan sistem
untuk mengelola setiap perubahan pada dokumen, website, program dan kumpulan
program. Sistem VCS sendiri berfungsi sebagai source code manajemen.
Sebagai
contoh yaitu ketika seseorang sedang mengerjakan sebuah laporan, lalu laporan
tersebut memiliki revisi. Maka, orang itu tentunya akan membuat file baru dengan
nama “Laporan revisi 1”. Jika terdapat revisi lagi, maka orang tersebut akan
membuat file baru lagi dan seterusnya sampai laporan tersebut selesai.
Cara
pengerjaan tersebut tentunya tidak effisien dan memakan banyak ruang
penyimpanan. Terlebih jika satu file saja sudah memuat ukuran puluhan megabit.
Disinilah fungsi VCS diperlukan. VCS akan membantu menyimpan history tanpa
menyimpan file baru. Yang disimpan hanya perubahan data saja, sehingga tidak
akan membuat ruang penyimpanan menjadi penuh.
Karena
yang disimpan berupa history, maka akan dimungkinkan untuk mengakses atau
mengembalikan file lama yang belum dilakukan perubahan. Konsep dari VCS hanya
menyimpan rekaman perubahan menjadi sebuah history dengan satu file saja. Kita
masih bisa mengakses file lama dengan mengakses kode history-nya.
Pengertian
Git
Git
adalah sebuah software yang dibangun dengan konsep Version Control System
yang berfungsi untuk mencatat perubahan seluruh file dari proyek. Selain itu,
Git juga memiliki fitur distributed revision control atau dalam kata
lain VCS yang terdistribusi. Penyimpanan database dari Git tidak hanya berada
dalam satu tempat saja. Melainkan semua orang yang terlibat dalam proyak akan
dimungkinkan untuk menyimpan database tersebut. Hal inilah yang membuat Git
dapat melakukan manajamen proyek secara kolaboratif.
Dalam
Git terdapat konsep “Commit” yang berfungsi untuk melakukan penyimpanan riwayat
perubahan data pada file atau menyimpan history perubahan. Melalui Commit ini
juga kita bisa mengakses kembali file sebelumnya dengan konsep Checkout.
Karena
dimungkinkan untuk melakukan kolaborasi, setiap orang yang terlibat dapat
melakukan perubahan file secara terpisah, lalu file-file tersebut dapat
digabungkan dengan konsep merge. Namun, penggabungan tersebut harus disetujui
oleh orang yang terlibat di proyek.
Pengertian
Github
Github
merupakan sebuah platform untuk menyimpan dan mengelolah file berupa dokumen
atau kode dari sebuah proyek. Untuk lebih jelasnya, Git merupakan sebuah version
control system untuk memanajemen file, sedangkan Github sendiri merupakan
platform untuk menyimpan file tersebut. Github menyimpan data secara cloud
sehingga harus online untuk dapat menggunakannya.
Github
juga dapat digunakan secara gratis dan dimungkinkan juga untuk membuat
unlimited repository (istilah untuk folder yang berisi file). Akan tetapi,
Github juga memiliki fitur berbayar untuk mendapatkan tambahan keamanan pada pengguna.
Dengan
desain user interface yang mudah dipahami menjadikan Github mudah untuk
dipelajari bagi pemula. Terdapat beberapa fitur yang berguna seperti blog dan
feed yang bisa dibuat oleh pengguna untuk sharing ide-ide atau berdiskusi
terhadap suatu permasalahan. Singkatnya , Github sendiri merupakan media
sosialnya para programmer.
Adapun
beberapa fungsi dari Github adalah memudahkan kolaborasi pengerjaan proyek.
Github juga memungkinkan pengguna untuk melakukan review kode, papan proyek
untuk mengatur workflow dan lainnya. Selain itu, Github dapat mencegah
perubahan file atau kode yang dapat merusak file aslinya. Hal ini karena Github
memiliki fitur cabang yang memungkinkan pengguna untuk melakukan perubahan di
luar file utama proyek atau file masternya. Github juga dapat dijadikan sebagai
portofolio bagi seorang yang bekerja sebagai developer.
Perbedaan
Git dan Github
Untuk
lebih memahami perbedaan dari Git dan Github bisa melihat dari penjelasan di
bawah ini:
Git
·
Mengunduh dan menginstall aplikasi di
penyimpanan lokal device
·
Dikelola oleh The Linux Foundation
·
Version control
·
Dapat diakses secara offline
·
Memiliki desktop interface yang disebut
Git GUI
·
Bersifat gratis
Github
· Host
melalui layanan cloud
· Diakuisisi
oleh Microsoft
· Source
code hosting secara terpusat
· Akses
hanya bisa secara online
· Menggunakan
user manajemen
· Terdapat
pilihan untuk menggunakan secara gratis dan berbayar
Penutup
Git
dan Github merupakan aplikasi yang penting untuk memanajemen file khususnya
kode program sehingga menjadi penting bagi programmer. Selain itu, repository Github
juga dapat dijadikan sebagai publik sehingga bisa diakses oleh sesama pengguna
diluar kolaborasi. Akan tetapi, Github bisa menyimpan file yang berformat apa
saja sehingga dapat digunakan oleh siapa saja yang ingin memanajemen file
proyeknya dengan mudah dan bersifat kolaboratif.
Itulah penjelasan mengenai Git dan Github, jika Sobat sedang mengerjakan sebuah proyek dan harus memperbaruinya secara berkala dengan menyimpan perubahan dalam satu file saja, aplikasi ini dapat menjadi pilihan. Semoga bermanfaat Sobat.