Serba Serbi Git

Selamat datang di artikel pertama saya. Ini kali pertamanya saya menulis artikel. Kali ini saya akan membahas tentang Git dan segala hal tentang Git yang bisa saya bahas.

Logo dari Git

Apa itu Git

Apa itu Git? Kok namanya seringkali terdengar dari mulut programmer? Kira-kira hal tersebut yang mungkin menghantui orang-orang yang baru menggeluti dunia pemrograman.

Git merupakan sebuah salah satu Version Control System yang dapat digunakan dalam mengembangkan perangkat lunak, baik proyek pribadi maupun proyek besar yang dikerjakan oleh sejumlah orang.

Ringkasnya, Git adalah pencatat setiap perubahan yang dilakukan pada file proyek.

Untuk menggunakan Git, kita perlu mengunduh instalasi Git yang tertera pada situs resmi lalu kemudian buka file instalasi tersebut untuk menginstal Git pada komputer kesayangan.

Kalo sudah harus ngapain lagi? Untuk step selanjutnya kita akan belajar menggunakan basic commands dari Git.

Commands

Ada 2 pilihan untuk memulai, yaitu:

  • git init
    Command ini digunakan jika kita ingin memulai dari awal
  • git clone <link repository>
    Command ini digunakan jika kita ingin memulai dari repository yang sudah ada.

Setelah itu kita dapat memulai mengerjakan project. Gunakan git add untuk menambahkan perubahan pada project.

  • git add <directory dari file>
    Command ini berguna ketika kita hanya ingin menambahkan file spesifik saja.
  • git add .
    Command ini berguna jika kita ingin menambahkan semua perubahan yang telah dikerjakan sehingga kita tidak perlu repot-repot menambahkan satu per satu.

Jika sudah, maka kita dapat ke step selanjutnya yaitu menambahkan remote untuk repository kita.

  • git remote add origin <link repository git>
    Command ini digunakan agar perubahan kita selalu dipush ke repository online dari project kita.

Setelah itu kita perlu menambahkan pesan sebelum akhirnya menambahkan perubahan kita ke repository online.

  • git commit -m “<pesan>”
    Command ini digunakan untuk menggambarkan secara ringkas apa saja perubahan yang telah kita buat.

Terakhir, kita dapat menambahkan perubahan ke repository online dengan command git push. Hore!

Wah ternyata sudah ada perubahan pada repository online, dan belum sinkron dengan versi lokal. Tenang, untuk memperbaharuinya cukup gunakan command git pull.

  • git pull
    Command ini digunakan untuk menyingkronisasi repository lokal dengan repository online.

Saya ingin mengerjakan suatu fitur, namun saya tidak ingin perubahan saya merusak proyek saat ini. Tenang, kita dapat menggunakan command git branch.

  • git branch <nama branch>
    Command ini digunakan untuk membuat cabang baru yang terpisah dari cabang utama. Kita dapat mengembangkan fitur tanpa takut merusak proyek.

Setelah membuat cabang baru, kita perlu pindah ke cabang tersebut dengan command git checkout.

  • git checkout <nama branch>
    Command ini digunakan untuk berpindah dari suatu cabang ke cabang lain yang tersedia.

Oh tidak, saya tidak sengaja melakukan commit dan tidak sadar perubahan saya sedikit bermasalah. Namun untungnya perubahan ini belum dipush. Untuk ini kita dapat menggunakan command git reset yang akan membatalkan commit tersebut.

Jika sudah terlanjur push bagaimana? Untuk ini kita dapat menggunakan command git revert. Command ini akan membatalkan perubahan ke commit sebelumnya namun akan tercatat sebagai commit baru.

Selanjutnya kita akan membahas tentang Git Flow dan mengapa hal tersebut penting dalam pengembangan perangkat lunak.

Apa itu Git Flow? Apa Pentingnya?

Ilustrasi Git Flow

Seperti yang telah dijelaskan sebelumnya, kita perlu membuat cabang saat mengembangkan fitur. Nah, Git flow akan mempermudah kita dalam mengembangkan perangkat lunak. Git flow juga membuat cabang utama, yaitu master, menjadi lebih rapi.

Terdapat beberapa cabang pada Git flow, yaitu:

  • master: cabang utama yang menyimpan berkas siap deploy dan sudah layak guna
  • staging: cabang yang digunakan untuk menyatukan hasil pekerjaan setiap developer pada masa sprint
  • cabang PBI: cabang yang digunakan untuk mengembangkan PBI yang diambil pada suatu sprint, dan cabang ini berjumlah banyak sesuai dengan jumlah PBI yang diambil
  • cabang hotfix: cabang ini digunakan jika terdapat bug pada cabang master
  • cabang coldfix: cabang ini digunakan untuk rollback jika product owner menolak PBI yang sudah dikembangkan

Dengan kata lain, pengembangan PBI dikerjakan pada cabang PBI (diberi nama PBI-X dimana X adalah nomor). Cabang PBI akan dimerge ke cabang staging jika PBI tersebut selesai dikembangkan. Jika ada PBI yang ditolah oleh PO, maka kita akan menggunakan cabang coldfix untuk menghapus PBI tersebut. Cabang staging baru akan dimerge dengan cabang master ketika produk sudah layak pakai.

Saat menyatukan dua cabang, misal cabang PBI dengan staging, kita memerlukan merge request dimana developer lain akan mereview perubahan. Perubahan tersebut dapat diapprove ataupun didecline oleh developer lain. Jika syarat minimal untuk merge request terpenuhi, maka kita sudah bisa merging kedua cabang tersebut.

Referensi

--

--

Not a Writer :)

Love podcasts or audiobooks? Learn on the go with our new app.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store