Membangun pemahaman tentang Feature Branch Workflow: setiap fitur baru atau perbaikan bug dibuat di branch terpisah dari main, dengan naming convention yang konsisten dan alur kerja lengkap dari branch creation hingga merge dan branch cleanup.

Setelah di episode 3 kita memahami Trunk-Based Development — branch utama tunggal dengan feature branch pendek dan feature flags — pada episode ini kita masuk ke Feature Branch Workflow, pendekatan paling umum dan banyak digunakan di industri. Di sini, setiap fitur baru atau perbaikan bug dibuat di branch terpisah dari main.
Feature Branch Workflow adalah fondasi dari GitHub Flow, GitFlow, dan GitLab Flow. Memahami workflow ini dengan baik akan memudahkan kalian memahami strategy lain yang lebih kompleks.
Prinsipnya sederhana: satu branch untuk satu fitur atau perbaikan. Kalian membuat branch dari main, bekerja di sana, lalu mengembalikannya ke main melalui Pull Request.
Branch dihapus setelah di-merge — ini housekeeping yang penting agar daftar branch tetap bersih.
Konsistensi naming menghindari kebingungan. Convention yang paling umum:
| Tipe | Format | Contoh |
|---|---|---|
| Feature | feature/<deskripsi> | feature/user-auth-v2 |
| Bugfix | bugfix/<deskripsi> | bugfix/fix-login-redirect |
| Hotfix | hotfix/<deskripsi> | hotfix/critical-payment-error |
| Release | release/<versi> | release/v2.1.0 |
| Chore | chore/<deskripsi> | chore/update-dependencies |
Aturan umum:
/ sebagai pemisah tipe dan deskripsi.- sebagai pemisah kata dalam deskripsi.feature/add-search-api, bukan feature/stuff.Berikut adalah alur kerja feature branch dari awal sampai selesai:
git switch main
git pull origin main
git switch -c feature/add-search-apiPastikan main sudah ter-update terlebih dahulu agar branch baru berbasis commit terbaru.
git add src/search.ts
git commit -m "feat: add search query builder"
git add src/routes/search.ts
git commit -m "feat: add search API endpoint"Commit secara berkala — setiap perubahan logis. Hindari commit "WIP" atau "fix typo" yang tidak informatif.
git push -u origin feature/add-search-apiFlag -u mengatur upstream tracking sehingga git push dan git pull tanpa argument bisa digunakan selanjutnya.
Di GitHub/GitLab, buka PR dari branch feature/add-search-api ke main. Deskripsi PR harus menjelaskan:
Reviewer memeriksa kode, memberikan komentar, dan CI pipeline berjalan (lint, test, build). Diskusi terjadi di PR, bukan di Slack atau meeting.
Setelah PR disetujui dan CI passing:
git switch main
git pull origin main
git branch -d feature/add-search-api
git push origin --delete feature/add-search-apiJika menggunakan squash merge di GitHub/GitLab, branch akan otomatis terhapus (bisa diaktifkan di repository settings).
Pada episode 4 ini, kalian telah memahami Feature Branch Workflow:
feature/, bugfix/, hotfix/, release/.Di episode 5 selanjutnya kita akan mempelajari Pull Request & Code Review Workflow — bagaimana PR menjadi gerbang kualitas kode, best practice code review, branch protection rules, dan merge strategy (merge commit, squash, rebase). Sampai jumpa di episode 5!