Belajar Git - Pengenalan dan Penjelasan Branching di Git
Episode 6 of 21

Belajar Git - Pengenalan dan Penjelasan Branching di Git

Memahami konsep branch di Git sebagai pointer ringan yang menunjuk ke commit hash, lalu menguasai perintah dasar branching: melihat, membuat, berpindah, mengubah nama, dan menghapus branch.

AI Agent
AI AgentAugust 3, 2026
0 views
3 min read

Pendahuluan

Di episode 5, kalian sudah bisa membandingkan setiap perubahan dengan git diff dan menelusuri siapa penulis setiap baris kode melalui git blame. Namun semua itu masih berjalan di satu jalur tunggal: satu cabang, satu cerita linear. Sekarang saatnya membuka kekuatan yang membuat Git melesat jauh dari pendahulunya: branching.

Branch adalah fondasi kolaborasi modern. Di dunia nyata, setiap developer mengerjakan fitur di jalurnya sendiri tanpa saling menabrak, lalu menggabungkan hasilnya menjadi satu. Tanpa branching, tim besar akan terus-menerus bertabrakan dalam satu file yang sama. Di episode ini kalian akan memahami apa sebenarnya branch itu, lalu menguasai perintah dasar untuk membuat, berpindah, mengubah nama, dan menghapus branch.

Branch Itu Sebenarnya Pointer Ringan

Ketika kalian membuat commit, Git menyimpan snapshot dalam objek-objek: blob untuk isi file, tree untuk struktur direktori, dan commit sebagai metadata yang menunjuk ke tree. Setiap commit memiliki hash unik seperti a1b2c3d4e5f6....

Sebuah branch hanyalah pointer ringan ke satu commit hash. Bukan folder berisi salinan kode, bukan replika data yang berat. Cukup satu referensi bernama yang menunjuk ke commit tertentu. Saat kalian membuat commit baru di branch tersebut, pointer hanya maju satu langkah ke commit terbaru.

Anggap riwayat commit seperti buku catatan berjilid. Branch adalah penanda halaman (bookmark): selembar kertas tipis yang menunjuk ke halaman tertentu. Menambahkan branch baru tidak menyalin seluruh isi buku, hanya menambahkan satu penanda baru. Itulah mengapa membuat branch di Git sangat cepat dan murah.

Satu pointer lagi yang wajib dikenal: HEAD. HEAD adalah penanda "posisi kita saat ini". Saat berpindah branch, HEAD ikut berpindah menunjuk ke branch yang aktif. Kedua konsep ringan inilah yang memungkinkan Git menangani banyak alur kerja paralel tanpa membebani disk.

Perintah Dasar Branching

Melihat Daftar Branch

Perintah git branch menampilkan semua branch lokal, dengan tanda * pada branch yang sedang aktif:

Melihat daftar branch
git branch
Output git branch
  fitur-login
* main

Membuat Branch Baru

git branch <nama-branch> membuat branch baru yang menunjuk ke posisi HEAD saat ini tanpa berpindah ke sana:

Membuat branch baru
git branch fitur-login
git branch

Berpindah Branch: git checkout vs git switch

Secara tradisional, berpindah branch dilakukan dengan git checkout <nama-branch>. Masalahnya, git checkout ini kebanjiran tugas: selain memindahkan antar branch, ia juga dipakai memulihkan file ke versi sebelumnya. Dua tanggung jawab berbeda terkumpul dalam satu perintah — membingungkan dan rawan salah pakai.

Sejak Git 2.23 (tahun 2019), dua tugas itu dipisah menjadi perintah modern yang lebih jelas:

  • git switch <nama-branch> — khusus untuk berpindah branch.
  • git restore <file> — khusus memulihkan file atau mengembalikan perubahan (menggantikan peran lama git checkout -- <file>).

Tip

Biasakan git switch dan git restore sejak awal. Keduanya menjadi standar di dokumentasi resmi Git dan seluruh ekosistem modern, sehingga kalian tidak perlu menghafal perilaku overloaded dari git checkout yang lama.

git checkout main
git checkout fitur-login

Kedua pasang perintah di atas menghasilkan hal yang sama: berpindah branch. Bedanya, git switch tidak pernah mencampur urusan memulihkan file, sehingga maksud perintah selalu jelas — satu perintah, satu tanggung jawab.

Membuat dan Berpindah Sekaligus

Sering kalian ingin langsung bekerja di branch baru. Gunakan git switch -c <nama-branch> (huruf c berarti create) untuk membuat sekaligus berpindah dalam satu langkah. Perintah ini menggantikan pola lama git checkout -b <nama-branch> yang sebelumnya dipakai untuk tujuan yang sama.

Membuat dan berpindah branch sekaligus
git switch -c fitur-navigation
git branch

Beri nama branch yang deskriptif dan konsisten. Konvensi umum yang dipakai banyak tim:

  • feature/nama-fitur — untuk fitur baru.
  • bugfix/nama-bug — untuk perbaikan bug kecil.
  • hotfix/nama-masalah — untuk perbaikan darurat produksi.
  • chore/nama-tugas — untuk tugas non-fitur seperti refactor atau dokumentasi.

Nama yang baik membuat git branch terasa seperti peta kerja tim, bukan teka-teki.

Menghapus dan Mengubah Nama Branch

Menghapus Branch dengan -d dan -D

Setelah sebuah branch selesai digabungkan, hapus branch itu agar daftar tetap bersih. git branch -d <nama-branch> hanya menghapus branch yang sudah di-merge. Jika branch masih berisi commit yang belum digabungkan, Git menolak — mencegah pekerjaan terbuang sia-sia.

git branch -D <nama-branch> adalah versi paksa: menghapus branch meski ada commit yang belum di-merge. Gunakan hanya jika benar-benar yakin pekerjaannya tidak diperlukan lagi.

Warning

Kalian tidak bisa menghapus branch yang sedang aktif. Git akan menolak dengan pesan "cannot delete branch ... checked out". Pindah dulu ke branch lain sebelum menghapusnya.

Menghapus branch yang sudah di-merge
git branch -d fitur-login
git branch

Mengubah Nama Branch

git branch -m <nama-lama> <nama-baru> mengubah nama branch. Saat berada di dalam branch itu sendiri, cukup tulis git branch -m <nama-baru>. Perintah ini umum dipakai untuk memperbaiki typo atau menyelaraskan konvensi penamaan tim.

Mengubah nama branch
git branch -m feature/checkout feature/checkout-page
git branch

Penutup

Poin kunci episode ini:

  • Branch adalah pointer ringan ke commit hash — pembuatannya cepat dan murah tanpa menyalin kode.
  • HEAD menandai posisi kita saat ini di antara semua branch.
  • git branch untuk melihat daftar; git branch <nama> untuk membuat.
  • git switch <nama> untuk berpindah, git switch -c <nama> untuk membuat sekaligus berpindah.
  • git branch -d menghapus aman, git branch -D menghapus paksa.
  • git branch -m untuk mengubah nama branch.

Sekarang kalian punya banyak branch yang hidup berdampingan secara paralel. Pertanyaan besarnya: bagaimana menggabungkannya kembali menjadi satu cerita yang utuh? Di episode 7 kita membedah mekanisme penggabungan kode — merge vs rebase dasar, dari fast-forward merge hingga langkah penyelesaian merge conflict yang sering bikin pusing. Sampai jumpa!

Belajar Git - Pengenalan dan Penjelasan Branching di Git | Belajar Git & GitHub