Branch adalah fitur paling powerful di Git — memungkinkan kamu mengerjakan banyak hal secara bersamaan tanpa saling mengganggu.
Bayangkan kamu sedang membangun rumah. Branch adalah kemampuan untuk membuat tiruan rumah tersebut, bereksperimen sesukamu (cat ulang dinding, ubah layout), dan jika hasilnya bagus, gabungkan perubahan itu ke rumah asli — tanpa pernah merusak rumah asli selama proses eksperimen.
Dalam Git:
main branch (rumah asli):
A ← B ← C
Buat branch fitur baru:
A ← B ← C ← main (tidak berubah)
\
D ← E ← feature/navbar (eksperimen di sini)
| Skenario | Tanpa Branch | Dengan Branch |
|---|---|---|
| Kerjakan fitur baru | Edit langsung di kode utama — berisiko | Buat branch baru, aman |
| Perbaiki bug darurat | Terganggu oleh WIP fitur lain | Switch branch dengan mudah |
| Tim 3 orang | Konflik terus-menerus | Masing-masing di branch sendiri |
| Rilis ke produksi | Kode WIP ikut terbawa | Branch main selalu bersih |
HEAD adalah pointer yang menunjuk di mana kamu berada sekarang — commit aktif atau branch aktif:
main: A ← B ← C ← D
↑
HEAD
(kamu di sini)
Ketika berpindah branch, HEAD berpindah mengikutinya:
git checkout feature/login
main: A ← B ← C ← D
feature/login: \
E ← F
↑
HEAD
(sekarang di sini)
# Lihat semua branch lokal
git branch
# Output:
# feature/login
# * main ← tanda * = branch aktif
# Lihat semua branch (lokal + remote)
git branch -a
# Buat branch baru
git branch feature/navbar
# Berpindah ke branch
git checkout feature/navbar
# atau cara modern:
git switch feature/navbar
# Buat branch baru DAN langsung pindah ke sana
git checkout -b feature/navbar
# atau cara modern:
git switch -c feature/navbar
# Hapus branch (sudah di-merge)
git branch -d feature/navbar
# Hapus branch paksa (belum di-merge)
git branch -D feature/navbar
Nama branch yang deskriptif memudahkan kolaborasi:
# Untuk fitur baru
git switch -c feature/user-authentication
git switch -c feature/shopping-cart
git switch -c feat/dark-mode
# Untuk perbaikan bug
git switch -c fix/login-crash
git switch -c bugfix/cart-calculation
# Untuk hotfix darurat di produksi
git switch -c hotfix/payment-gateway
# Untuk eksperimen
git switch -c experiment/new-ui
# Untuk rilis
git switch -c release/v2.1.0
# Branch lokal — hanya ada di komputermu
git branch
# Branch remote — ada di server (GitHub)
git branch -r
# origin/main
# origin/feature/login
# Semua branch
git branch -a
💡 Tips: Biasakan bekerja di branch terpisah untuk setiap fitur atau perbaikan, sekecil apapun. Branch di Git sangat ringan dan murah — tidak ada kerugian membuat banyak branch. Jangan langsung commit ke
main! 🌱
Kursus
Git Dasar
Kategori
Branching
Durasi Pelajaran
20 menit