Branch memungkinkan kita mengerjakan perubahan tanpa langsung mengganggu kode utama. Kita bisa membuat jalur pengembangan terpisah untuk fitur, perbaikan bug, atau eksperimen, kemudian menggabungkannya kembali setelah selesai.
Apa Itu Branch?
Branch adalah penunjuk ke suatu commit dalam Git.
Ketika membuat branch baru, Git tidak menyalin seluruh folder project. Git hanya membuat penunjuk baru dari posisi commit yang sedang aktif. Karena itu, proses membuat dan berpindah branch berlangsung cepat.
Sebagai contoh, sebuah project memiliki branch utama bernama main. Ketika ingin membuat fitur login, kita dapat membuat branch baru bernama feature/login.
Perubahan untuk fitur login dikerjakan di branch tersebut tanpa langsung memengaruhi main.
Secara sederhana, pekerjaan dimulai dengan membuat branch dari main. Perubahan dikerjakan dan dikirim melalui branch tersebut, kemudian diperiksa sebelum digabungkan kembali ke main.

Melihat Branch
Gunakan command berikut untuk melihat branch lokal yang tersedia:
git branch
Branch yang sedang aktif akan ditandai dengan simbol *.
Untuk melihat branch lokal dan remote sekaligus:
git branch -a
Membuat Branch Baru
Branch baru dapat dibuat dengan:
git branch feature/login
Command tersebut hanya membuat branch, tetapi belum memindahkan kita ke branch baru.
Cara yang lebih praktis adalah membuat sekaligus berpindah ke branch tersebut:
git switch -c feature/login
Setelah menjalankan command tersebut, commit berikutnya akan tercatat pada feature/login.
Berpindah Branch
Untuk berpindah ke branch yang sudah tersedia:
git switch main
Kemudian kembali ke branch fitur:
git switch feature/login
Sebelum berpindah branch, sebaiknya commit perubahan atau simpan sementara menggunakan git stash. Ini mencegah perubahan yang belum selesai ikut terbawa atau menghalangi proses perpindahan branch.
Untuk menyimpan perubahan sementara:
git stash
Untuk mengembalikannya:
git stash pop
Mengirim Branch ke Remote Repository
Branch yang baru dibuat masih tersimpan di komputer lokal. Agar tersedia di GitHub atau GitLab, kirim branch tersebut ke remote repository:
git push -u origin feature/login
Opsi -u menghubungkan branch lokal dengan branch remote. Setelah itu, push berikutnya cukup menggunakan:
git push
Menggabungkan Branch
Untuk project pribadi atau pengujian lokal, branch dapat digabungkan langsung melalui terminal.
Pindah dahulu ke branch tujuan:
git switch main
Ambil perubahan terbaru dari remote:
git pull
Kemudian gabungkan branch fitur:
git merge feature/login
Pada project tim, perubahan biasanya tidak langsung di-merge melalui terminal. Setelah branch dikirim ke remote repository, developer membuat Pull Request di GitHub atau Merge Request di GitLab.
Perubahan kemudian diperiksa melalui proses review sebelum digabungkan ke main. Cara ini membantu tim menemukan masalah dan mendiskusikan perubahan sebelum kode masuk ke branch utama.
Menghapus Branch
Branch lokal yang sudah selesai dan berhasil digabungkan dapat dihapus:
git branch -d feature/login
Opsi -d hanya menghapus branch yang sudah digabungkan sehingga lebih aman digunakan.
Untuk menghapus branch dari remote repository:
git push origin --delete feature/login
Alur Sederhana Menggunakan Branch
Berikut contoh alur penggunaan branch untuk mengerjakan fitur login:
git switch main
git pull
git switch -c feature/login
Setelah perubahan selesai, simpan ke dalam commit:
git add .
git commit -m "feat: add login feature"
Kemudian kirim branch ke remote repository:
git push -u origin feature/login
Setelah itu, buat Pull Request atau Merge Request. Branch dapat digabungkan ke main setelah perubahan selesai diperiksa.
Command yang Digunakan
| Command | Fungsi |
|---|---|
git branch |
Melihat branch lokal |
git branch -a |
Melihat branch lokal dan remote |
git switch -c feature/login |
Membuat sekaligus berpindah branch |
git switch main |
Berpindah ke branch main |
git push -u origin feature/login |
Mengirim branch baru ke remote |
git merge feature/login |
Menggabungkan branch secara lokal |
git branch -d feature/login |
Menghapus branch lokal yang sudah digabungkan |
git push origin --delete feature/login |
Menghapus branch dari remote |
Penutup
Branch membantu memisahkan setiap pekerjaan agar perubahan lebih terkontrol. Fitur baru, perbaikan bug, dan eksperimen dapat dikembangkan tanpa langsung mengubah branch utama.
Tidak perlu menghafal semua command di awal. Untuk penggunaan dasar, cukup pahami cara melihat, membuat, berpindah, mengirim, menggabungkan, dan menghapus branch.