Git Flow

Luqman Iffan Windrawan
PDB+R
Published in
2 min readMay 21, 2019

Halo teman-teman, kembali dengan Luqman! Kali ini saya akan menjelaskan mengenai Git Flow.

Apa itu Git?

Git adalah sebuah Version Control System (VCS) yang digunakan dalam pengembangan software. Dengan digunakannya Git, para developer dapat berkolaborasi dan berkoordinasi. Git juga bisa melihat perubahan-perubahan yang dilakukan dari sebuah repository.

Git mempunyai fitur branch, di mana developer dapat membuat versi baru dari repository utama untuk dikembangkan sesuai fitur yang ingin dikembangkan, yang pada akhirnya bisa dilakukan merge untuk menggabungkan 2 branch berbeda.

Cara Kerja

Ilustrasi Git Flow, diambil dari panduan Git Flow PPL 2019

Terdapat beberapa cabang atau branch beserta tugasnya:

  • Branch Master

Merupakan branch utama yang menyimpan code yang siap dideploy ke dalam production environment. Code juga siap untuk dipakai oleh pengguna.

  • Branch staging

Merupakan branch utama pengembangan, dan berisi semua gabungan code hasil pekerjaan setiap developer digabung menjadi satu. Aplikasi yang digunakan saat sprint review berasal dari branch ini.

  • Branch User Story

Merupakan branch untuk pengembangan dan implementasi user story. Penamaan branch ini disesuaikan dengan nomor dan nama user story yang dikembangkan.

  • Branch Hotfix

Merupakan branch terusan dari branch master yang dibuat jika terdapat bug atau error pada branch master. Branch ini digunakan untuk memperbaiki bug, dan setelah bug diperbaiki akan dimerge kembali dengan branch master.

  • Branch Coldfix

Merupakan branch yang dibuat untuk rollback. Hal ini dilakukan jika product owner menolak salah satu atau beberapa user story yang sudah dikembangkan saat sprint review.

Git Manual

  • Git Pull

Menarik file dari repository online dan langsung merge dengan repository lokal.

  • Git Push

Meng-update repository online dengan repository local pada komputer developer.

  • Git Clone

Mengambil repository online ke sebuah directory pada local, dan secara otomatis membuat branch-branch yang sudah ada pada repository online.

  • Git Merge

Menggabungkan 2 branch dengan cara memasukkan suatu branch ke branch yang lain.

  • Git Rebase

Mirip dengan merge, tapi juga menulis ulang project history dengan membuat commit baru pada branch tujuan untuk setiap commit di branch awal.

  • Git Revert

Menyimpan commit yang sudah dilakukan dan memundurkan state suatu repository menjadi sebelum commit dilakukan.

  • Git Stash

Menyimpan kondisi repository saat ini, dan mundur ke kondisi repository yang ‘bersih’.

  • Git Remote

Mengatur set repository yang di-track.

  • Git Checkout

Berpindah branch yang dikerjakan.

  • Git Branch

Melihat, membuat, atau menghapus branch yang ada.

Referensi: https://git-scm.com/doc

--

--