Sesi 1 : Kenalan sama Git
by Pandhu Wibowo
2018-06-23 | #Tools atau Software


Assalamu'alaikum warrahmatullahi wabarakatuh, Siang temen - temen.

Balik lagi sama gua yang udah lama banget gak main - main ke sini, hmmm untuk perdana "ceritanya" haha setelah sekian lama gak nulis nulis, gak tau kenapa gak nulis lagi? hmmm ya sudahlah mending skip aja ga penting juga hehe. Temen - temen udah ada yang tau gua mau nulis tentang apa? "Gak usah kesel gara gara gua nanya ya wkwk karena lu udah baca judulnya juga dihalaman depan blog ini". Okelah gak dijawab juga gak masalah juga buat gua haha. 

Kali ini gua mau sharing tentang yang namanya service atau layanan dari salah satu Version Control yang udah banyak yang pake. Sebenarnya ada 10 yang gua tau namanya tentang version control itu sendiri ada apa aja. Tapi disini gua mau sharing yang sering gua pake sehari - hari aja. Sebelumnya udah tau apa itu Git? Dan kenapa kalian wajib pake salah satu layanan version control? Ada yang udah pake belum? Mungkin kalau udah tau tulisan ini bisa jadi refresh lagi buat temen - temen yang udah lama gak pake, atau sekedar cuma buang - buang waktu kalian aja hahha.

Image result for git

Kita dari dari penjelasan Version Control dulu aja kali ya biar enak. Jadi gini bre, Version Control atau lengkapnya Version Control System merupakan layanan infrastruktur yang digunakan biasanya itu mendukung banget buat para developer atau semacamnya untuk berkolaborasi dalam pengembangan software atau project - project yang lagi dipegang atau mau dibangun. Lazimnya, kalian cukup coding atau nulis kode program dilaptop atau komputer temen - temen tapi udah pasti udah ada layanan atau services dari salah version control tersebut. Nah dari situ nanti bisa digabungin deh tuh hasil kerjaan temen - temen ke server yang udah ada VCSnya. Paham gak temen - temen? Terus kenapa kita wajib pake ini kalau untuk kolaborasi dalam pengembangan software?

Oke, pengalaman gua pake ini simple banget dari pada sebelumnya, contohnya misalnya lu mau tau perkembangan temen lu yang tugasnya udah lu bagi - bagi pertama kali pas mau bangun tuh project. Gimana caranya? Cara lamanya dan ribetnya adalah lu harus eksport database yang ada di temen lu, terus masukin ke dalam satu folder sama projectnya, abis itu di zip, terus kirim via email? atau simpan di cloud baru lu share? bener gak? Nah kalau udah pake layanan version control system ini, ya lu tinggal main - main aja ke tempat temen lu atau biasa disebut dengan branch (lebih lanjut mungkin nanti gua tulis juga tentang ini). Tanpa harus kirim - kiriman via email, eittts tapi itu kalau temen kalian udah simpan di server yang ada VCSnya ya. Kalau masih ada di laptop atau komputernya sama aja boong. Kalau udah main - main tinggal lu testing aja udah ada update-annya apa aja yang baru. Sedikit info dan manfaatnya kek gitu yang gua rasain.

Banyaknya bisa dibawah ini nih: 

1. Sama kaya yang diatas, gak perlu ribet kaya yang gua sebutin diatas, tinggal tengok aja ke tempat temen lu cara ceknya. 

2. Kalau ada kesalahan dengan pengembangan yang baru lu bisa balik ke program sebelumnya yang lu mau, tanpa banyak backup yang sudah kalian sediakan. Walaupun backup itu penting guyss.

3. Kalau mau gabungin projectnya tinggal jalanin perintah dari layanannya aja tanpa harus copy satu - satu dan cobain satu satu codingannya per class, method, dan sebagainya. Karena kalau programnya udah banyak pasti kalian mager juga buat ngelakuinnya. Jadi ini sangat efektif menurut gua.

4. Terus masalah backup udah tenang aja, udah dibantuin back up dicloudnya. udah pasti. Kalau mau pake laptop orang juga boleh asal laptopnya udah ada layanannya.

Apa lagi yaa hmm?

5. Oiya kolaborasi lu jadi lebih cepet dibanding tanpa pake ini, relatif si menurut gua, kalau nemu masalah dan gak bisa benerinnya juga ya lama - lama juga haha. Tapi ini beneran efektif kalau buat kerja tim, mempercepat pekerjaan deh pokoknya kalau kerja tim ya.

Nah dari cerita gua yang singkat ini gua harap kalian sedikit mengerti dan merefresh kembali ingatan kalian haha. 

Sekarang apa si macem - macem version control systemnya?

Sumbernya dari Codepolitan, gak banyak si gua cuma nyebutin aja nih, nanti mungkin bisa main - main ke situ tuh. Diantaranya:

a. Bazaar

b. Subversion

c. Mercurial

d. CVS

e. RCS

f. Perforce

g. ClearCase

h. GNUArch

i. GNU CSSC

j. Git

Kira - kira ada 10 tuh yang udah disebutin, mana yang biasa kalian pakai? Kalau gua si biasa pake Git. Paham bre sampai sini? Paham  pahamin aja kali ya hehe. Setelah gua jelasin sisi VCS-nya, sekarang mau terangin Gitnya nih. (Benerin gua juga ya dikomentar kalau ada yang keliru atau gak sesuai).

Git sendiri merupakan tool yang sering dipake nih dalam mengembangkan software baik itu skala kecil cuma untuk nyimpen project yang udah ada, atau memang udah besar sampe gak ketampung di hdd-nya masing - masing. Gua ga tau ini paling banyak dipakai atau engga sama para developer di luar sana, tapi yang jelas ini termasuk yang familiar pada developer. 

Git merupakan salah satu version control system (VCS) yang udah gua jelasin sedikit diatas, btw ini yang buat si Bapak Linus Torvalds nih. Ya pasti kalian taulah proyek awalnya bikin apa. (Kernel Linux sampai OS-nya). Nah tugas umumnya gua lupa ngapain dari si VCS ini, tugasnya yaitu menyimpan setiap perubahan yang terjadi dalam pengembangan terjadi baik dikerjakan secara kolaborasi atau pun lagi ngerjain sendiri.

Git sendiri itu kan servicenya gitu kan, kalau mau buat projectnya ada 2 si yang gua sering pakai, yaitu gitlab sama github. Gua sering main - main pake itu berdua. Tergantung kebutuhan aja, daftarnya gratis, karena emang opensource. 

Balik ke Git-nya, Dikenal juga sebagai distributed revision control (VCS terdistribusi), yang berarti tempat nyimpennya gak cuma di satu tempat aja. Temen - temen kalian yang tergabung dalam suatu project yang sama, sama - sama bisa ngerjain itu baik online maupun offline. Nah proses itu terjadi ketika ngerjain modul baru, atau revisian atau semacamnya, jadi bisa ngerjain gak cuma disatu tempat aja, nanti kalau udah selesai atau udah fixed harus digabung ke tempat atau server yang sama alias dijadiin satu gitu. 

Seperti itu temen - temen, next sharing berikutnya masih seputar git. Antara ngelanjutin tulisan ini atau nanti masuk ke teknisnya. Sip sip segitu aja dari gua, kalau mau nambahin bisa dikolom komentar. Oiya benerin jgua tuh kalau emang ada pemahaman gua yang keliru. Nanti biar gua update tulisannya dan pastinya dibenerin dong.

Oke sekian dari gua, selamat sore dan terima kasih. Semoga membantu temen - temen semua.

Wassalamu'alaikum warrahmatullahi wabarakatuh.

Copyright © 2017 by rootorial. All right reserved - Template by Faiz Malkani | Edited by rootorial