Kerjasama dalam Sebuah Tim Pembuatan Software dengan Fasilitas GitHub

PropellerAds
Programmer acap kali dianggap sulit bekerjasama dan memiliki cara sendiri dalam memecahkan masalah. Seorang programmer dapat mengerjakan program sederhana dengan cepat, tetapi jika ada programmer lain nimbrung ikut mengerjakan, bisa jadi hasilnya justru memperlambat penyelesaian program tersebut. Ini karena logika antara satu programmer dengan programmer lainnya mungkin berbeda, akibatnya perlu waktu lebih untuk saling diskusi atau bahkan berdebat.

Namun tentu lain ceritanya jika berbicara pembuatan program skala menengah ke atas. Software-software raksasa lahir dari gabungan kerja keras para programmer yang terlibat. Windows 10 misalnya, melibatkan sekitar 1.000 programmer. Mereka terbagi dalam grup-grup yang lebih kecil dengan fungsi masing-masing. Singkat kata, untuk suatu software berskala relatif besar, membentuk tim programmer adalah keharusan.

Manajemen Source Code

Kunci agar para programmer dapat bekerjasama terletak pada manajemen source code. Bahkan tanpa kerja tim sekalipun, seorang programmer mungkin memiliki cara tersendiri dalam memelihara source code yang dibuatnya, misalnya dengan membuat versi-versi program seperti versi alpha atau beta, rajin membuat backup dan dokumentasi, atau memberikan komentar pada source code.

Saat program semakin kompleks dan dibutuhkan tim programmer, umumnya akan dibuat pembagian tugas agar para programmer mengerjakan modulmodul terpisah yang nantinya akan digabungkan. Untuk itu dibutuhkan orang yang bertugas sebagai manager atau administrator untuk mengupdate dan memelihara keseluruhan source code aplikasi. Namun melakukan semuanya secara manual akan sangat melelahkan dan menyita waktu. Git hadir untuk membantu pekerjaan ini.


Git

Git adalah sistem untuk mengatur alur dan pengembangan aplikasi, terutama menyangkut manajemen source tadi. Pencipta Git adalah Linus Torvalds. Tidak asing lagi bukan? Ya, Linus yang juga menciptakan Linux Kernel. Git merupakan software gratis di bawah GNU General Public License (GNU GPL) dan mendukung sistem operasi Windows, Unix, dan OS X. Simak beberapa keuntungan menggunakan Git:
  • Mempercepat pengembangan aplikasi khususnya project yang dikerjakan secara tim.
  • Anggota tim dapat bekerja di mana saja, offline maupun online.
  • Git menyimpan log/ history pengembangan aplikasi sehingga mudah untuk menelusurinya kembali.
  • Memiliki fitur branch yang memungkinkan tim programmer mengerjakan bagian-bagian terpisah yang nantinya dapat digabungkan dengan mudah.

Saat ini mungkin Anda belum dapat membayangkan keuntungankeuntungan tersebut. Namun jika Anda mengikuti artikel ini sampai akhir, bukan hanya Anda akan mengerti semua manfaat tersebut, bisa jadi Anda menemukan sendiri keuntungan lain yang belum disebutkan.

Tentukan Project

Untuk menggunakan Git, Anda memerlukan sebuah project aplikasi yang sedang dikembangkan. Pada artikel ini penulis membuat sebuah website untuk user mengupload file yang dicurigai virus, website lalu akan mendeteksi file yang diupload menggunakan engine antivirus yang tersedia di VirusTotal (www.virustotal.com). Bahasa pemrograman yang digunakan adalah PHP. Contoh penggunaan website sebagai berikut:

Buka alamat website project tersebut (misalnya http://localhost/virusupload). Pilih file untuk diupload dan dideteksi (lihat Gambar 1).

File yang dipilih akan diupload dan otomatis dideteksi menggunakan berbagai antivirus (lihat Gambar 2).

Penulis akan mengembangkan fiturfitur pada website ini mengerjakannya dalam lingkungan Git. Dalam contoh ini , file-file PHP dan file lain yang diperlukan berada di komputer penulis , tepatnya di folder:

C:\xampp\ h tdocs \ virusupload


Bitbucket

Langkah berikutnya a d a l a h m e m b u a t akun Bitbucket. Apakah Bitbucket? Mengapa kita memerlukannya? Karena kita memerlukan sebuah tempat penyimpanan project yang dapat diakses oleh semua programmer yang terlibat. Ambil contoh kasus saat ini, file-file program berada pada laptop penulis, lalu penulis mengajak beberapa programmer untuk berkolaborasi mengembangkan project ini. Para programmer tersebut bisa jadi berlainan kota atau bahkan negara. Bagaimana agar semuanya dapat mengakses project yang sama dan up to date?

Mungkin Anda pernah mendengar istilah repository. Yaitu tempat penyimpanan aplikasi yang dapat diakses secara online atau disebut juga remote repository. Dengan demikian programmer yang terlibat dapat mendownload atau melakukan clone repository pada komputer masingmasing, atau disebut local repository. Nah, fungsi Bitbucket adalah sebagai remote repository project.

Untuk membuat akun baru pada Bitbucket, cukup registrasikan diri Anda di website resmi Bitbucket: www.bitbucket.org. Mendaftar Bitbucket bukan keharusan untuk seseorang yang ingin mengakses repository, terutama untuk repository publik. Mereka dapat langsung mengakses repository dan memodifikasi project melalui Git pada local masing-masing. Namun tetap diperlukan hak akses untuk mengupdate perubahan ke repository master. Untuk repository private, hanya user terpilih yang dapat melihat repository tersebut.

Setelah membuat akun Bitbucket, si pemilik project dapat membuat repository baru. Dalam contoh ini adalah repository untuk project website virus uploader yang saat ini masih berada dalam laptop penulis. Tampilan pembuatan repository baru pada Bitbucket terlihat seperti pada Gambar3.

Repository ini kita namakan “Virus Uploader”, dengan Access level publik, artinya repository ini dapat dilihat oleh semua orang. Repository yang telah tercipta akan memiliki URL tersendiri. Dalam contoh ini, URL repository Virus Uploader adalah https://bitbucket.org/wuyinzhi/virus-uploader.

Anda dapat menentukan user yang ingin diajak berkolaborasi melalui menu Access Management. Terdapat hak akses Read, Write, atau Admin. Contoh terlihat pada Gambar 4.


Instalasi Git

Saat ini kita telah memiliki aplikasi website virus upload dan akun Bitbucket yang akan menyimpan remote repository project Virus Uploader. Perhatikan bahwa saat ini repository pada Bitbucket masih kosong karena file project masih berada pada laptop penulis.

Git berperan sebagai sistem yang mengatur pengembangan aplikasi ini. Masing-masing anggota project perlu melakukan instalasi Git pada komputer masingmasing. Ikuti proses instalasi Git berikut.


Mula-mula download Git di alamat https://git-scm.com/download dan pilih versi Git yang sesuai dengan sistem operasi yang Anda gunakan. Dalam artikel ini, instalasi dan penggunaan Git dilakukan pada sistem operasi Windows. Setelah proses instalasi selesai, temukan icon Git Bash pada desktop atau daftar program. Git Bash adalah command line shell untuk mengetikkan perintah-perintah Git.

Jika Anda tidak suka dengan command line, terdapat banyak alternatif tool GUI sebagai pengganti Git Bash. Antara lain SourceTree (www.sourcetreeapp.com), GitEye (www.giteyeapp.com), dan lain-lain. Juga ada Git GUI yang sudah tersedia saat Anda selesai melakukan instalasi Git. Namun artikel ini lebih menitikberatkan perintah berbasis command line pada Git Bash, mengingat inilah dasar penggunaan Git tanpa tergantung dengan tool pihak ketiga dan interface Windows. Saat Anda telah menguasai perintah-perintah utama pada Git Bash, Anda tidak akan kesulitan menggunakan tool GUI yang mana pun.


Setup Repository Project

Sekarang akan dicontohkan bagaimana cara setup repository project Virus Uploader. Ini dilakukan oleh pemilik project, dalam hal ini melalui laptop penulis. Langkah-langkahnya:

Klik icon Git Bash pada desktop, akan terlihat prompt Git yang diawali dengan Gambar 3. Membuat repository melalui Bitbucket. tanda $.

Arahkan ke folder project (c:\ xampp\htdocs\virusupload) dengan mengetikkan perintah:

cd c:
cd xampp/htdocs/virusupload
Inisiasi project dengan mengetikkan perintah:
git init
git remote add origin https:// wuyinzhi@bitbucket.org/wuyinzhi/virusuploader.git
Folder ini telah menyimpan filefile yang diperlukan. Maka kita akan mentransfernya ke repository Bitbucket dengan perintah:
git add .
git commit -m “setup project repository”
git push origin master

Selesai! Kita akan membahas arti perintah-perintah di atas kemudian. Tampilan lengkap perintah-perintah di atas pada Git Bash terlihat seperti pada Gambar 5.


Melihat Repository Bitbucket

Sampai langkah ini, project tersimpan di laptop penulis sebagai local repository dan di Bitbucket sebagai remote repository. Karena remote repository ini bersifat publik, siapapun dapat mengakses dan membuat clone repository pada komputer masing-masing. Pada URL repository tersebut terlihat informasi seperti pada Gambar 6.


Git Bash Command

Sekarang mari kita memahami perintah-perintah dasar Git. Saat Anda memasuki Git Bash, tentu tampilannya mengingatkan Anda pada Command Prompt di Windows. Fungsi-fungsi seperti pindah folder, membuat file/ folder baru, dan seterusnya, ada pada Git Bash. Lihat contoh perintah-perintah sederhana pada tabel berikut.

Perintah Git Bash Fungsi
$ cd c: Pindah ke drive C:
$ cd xampp/htdocs/virusupload Pindah ke folder xampp/htdocs/virusupload
$ clear Membersihkan layar (seperti perintah cls pada Command Prompt)
$ ls Menampilkan file/ folder yang terdapat -
$ dir pada folder aktif.
$ mkdir temp Membuat folder baru dengan nama “temp”
$ rmdir temp Menghapus folder “temp”

Bagi Anda yang pernah menggunakan shell Linux, tentu melihat banyak kemiripan perintah. Anda juga dapat menggunakan shortcut seperti tombol tab untuk autocomplete atau tombol panah atas/ bawah untuk melihat urutan perintah yang telah diketik sebelumnya. Sekarang mari melihat perintahperintah utama yang berhubungan dengan manajemen repository Git.

Menambahkan stage setiap penambahan/ perubahan file yang terjadi. Mencatat dan memberi keterangan perubahan pada repository.
Perintah Git Bash Fungsi
$ git init Inisiasi/ membuat repository baru. Secara otomatis akan tercipta branch dengan nama master (perhatikan gambar 5 setelah perintah ini diketikkan).
$ git remote add origin <URL repository> Membuat remote repository baru dengan nama origin sehingga nantinya Anda dapat mengupdate (push) repository, tanpa perlu mengetikkan URL repository.
$ git add .
$ git commit -m “<keterangan>”
$ git push origin master Update perubahan yang telah dilakukan dari local repository ke remote repository. Kebalikan dari push adalah pull, yang digunakan saat Anda mengupdate perubahan dari remote repository ke local repository.
$ git status Menampilkan status terbaru. Anda dapat melihat perubahan apa saja yang terjadi.


Clone Repository

Sekarang mari melihat alur kerja dari sisi user yang diberi hak akses sebagai admin oleh pemilik project. Ia dapat melakukan cloning repository dari Bitbucket ke local. Mula-mula ia akan menjalankan Git Bash, menentukan folder kerja, dan melakukan cloning dengan mengetikkan perintah:

$ git clone https://bitbucket.org/ wuyinzhi/virus-uploader

Setelah perintah ini dijalankan, akan tercipta sebuah folder dengan nama “virus-uploader”, berisi repository project tersebut. Masuk ke dalam folder tersebut dan buat perubahan, misalnya dengan membuat file readme.txt dengan perintah:

$ notepad readme.txt

Perintah ini akan membuka Notepad. Ketik teks yang diinginkan dan simpan kembali. Sebagai catatan, kita tidak terpaku pada lingkungan Git Bash untuk melakukan menambah/ ubah/ hapus file dan folder. Kita dapat melakukannya melalui Windows Explorer dan tool lainnya, yang penting adalah semua perubahan dilakukan pada folder kerja repository, dalam hal ini folder virusuploader. Kembali pada skenario di atas, setelah user tersebut melakukan perubahan, ia lalu ingin mengupdate perubahan dari local ke remote dengan mengetikkan perintah:

$ git add .
$ git commit -m “menambahkan readme. txt”
$ git push origin master

Git Bash akan meminta username dan password seperti pada Gambar 7 agar hanya user yang memiliki akses seperti yang telah diatur pada Access Management yang dapat melakukan perubahan pada repository. Pada Bitbucket akan tercatat dan terlihat seluruh perubahan yang telah dilakukan oleh tim programmer. Anda dapat melihat file apa saja yang berubah, bahkan dapat menelusuri bagian source code mana saja yang dimodifikasi. Demikian perintah dan alur kerja dasar Git secara ringkas. Masih banyak lagi yang dapat Anda eksplorasi, ikuti kelanjutan artikel ini pada edisi depan yang akan membahas lebih jauh fiturfitur Git beserta contohnya. Di beberapa situs web terkemuka seperti suara.com/, okezone.com/, merdeka.com/, kapanlagi.com/, liputan6.com/, kompas.com/, detik.com/, tribunnews.com/, www.tempo.co/, kompiajaib.com, arlinadzgn.com, idntheme.com, gigapurbalingga.net, inilah.com/, mayangkaranews.com/, antaranews.com/, jawapos.com/, metrotvnews.com/, sindonews.com/, inipasti.com/, www.bola.net/, www.viva.co.id/, www.republika.co.id/, jalantikus.com/ sudah banyak tutorial tentang hal ini, namun saya coba sajikan lagi secara sederhana pada blog ini.

Demikian pembahasan singkat tentang Kerjasama dalam Sebuah Tim Pembuatan Software dengan Fasilitas GitHub. Mudah-mudahan akan memberikan manfaat bagi kita semua, jangan lupa masukan berupa saran, kritik atau sekedar komen selalu saya tunggu, terima kasih.

Share this with short URL:

You Might Also Like:

Use parse tool to easy get the text style on disqus comments:
Show Parser Hide Parser