Delapan chapter sebelumnya memainkan delapan pola sampai perintah-perintahnya. Menyusun semuanya di satu kepala memunculkan pertanyaan yang lebih penting dari perintah mana pun: pola yang mana, untuk proyek yang seperti apa? Workflow kerap dipilih lewat peniruan, bukan penalaran — tim menyalin GitFlow penuh dari blog terkenal, memasang review lima orang untuk repository dua penulis, atau berganti pola tiap tahun karena yang baru terdengar modern. Pemilihan yang sehat jalan ke arah sebaliknya: mulai dari masalah nyata, ukur tim dan produknya, lalu ambil pola paling sederhana yang menjawab keduanya. Pro Git menyebutnya kesepakatan kerja tim, bukan fitur perangkat lunak — bab Distributed Workflows . Chapter penutup ini merangkai keputusan itu menjadi kerangka, matriks, dan alur yang bisa dibaca sekali sebelum memutuskan.

Empat Pertanyaan Pembuka #

Keputusan workflow dijawab dengan empat pertanyaan, dan urutannya menentukan karena jawaban pertama mempersempit yang berikutnya:

PertanyaanJawabannya mengubah apa
Berapa kontributor rutin? (1 / 2-5 / 6+)bentuk gerbang: tanpa review, review satu orang, atau pemilik wilayah
Jenis produk apa dan kapan sampai pengguna?bentuk branch: trunk pendek, branch rilis, fork, atau siklus editorial
Seberapa matang CI?seberapa cepat boleh merge — mesin atau manusia yang menjaga kualitas
Seperti apa budaya review tim?ketatnya gerbang dan siapa yang berhak menimbang

Ukuran tim yang dihitung adalah kontributor rutin pada satu repository, bukan jumlah karyawan. Satu orang menjawab semua sendirian — pola Workflow Proyek Pribadi cukup. Dua sampai lima orang saling kenal dan berbagi satu produk — Workflow Tim Kecil pas ukurannya. Enam ke atas menuntut pembagian wilayah dan pemilik per path — wilayah Trunk-Based Development dan CODEOWNERS.

Jenis produk menentukan ritme perubahan. Situs web yang deploy terus-menerus butuh jalur pendek: PR kecil, merge cepat. Produk yang rilis terjadwal dengan beberapa versi hidup bersamaan — plugin, aplikasi on-premise — butuh branch rilis dan jalur Workflow Hotfix . Proyek publik dengan kontributor asing menuntut Workflow Open Source . Tim yang produknya dokumen memakai Workflow Documentasi .

Dua pertanyaan terakhir menjadi faktor pengali. CI yang matang — membangun dan menguji setiap PR — membeli keberanian merge cepat; tanpa CI, gerbang manual harus menggantikan mesin. Budaya review menentukan gerbangnya hidup atau hanya seremonial: review satu orang yang benar-benar membaca lebih bernilai daripada tiga persetujuan sekilas.

Matriks Rekomendasi #

Kombinasi paling umum dipetakan berikut — tiap baris dibaca sebagai titik mulai, bukan vonis:

Ukuran timProduk / ritmeCIBudaya reviewRekomendasi
1apa punbelum perlu—Proyek Pribadi : main-only, tag, cadangan
1eksperimen besar——Proyek Pribadi + Feature Branch sebagai isolasi
2-5web kontinudasar: tes jalanreview satu orangTim Kecil : main terproteksi, PR kecil, squash
2-5rilis terjadwalCI di tiap PRreview satu orangTim Kecil + Release dan Hotfix begitu ada pengguna
2-5open sourceCI ringanmaintainer penjaga gerbangOpen Source : fork, triage, CONTRIBUTING
tim penulisdokumentasibuild situs dokumenreviewer sebagai editorDocumentasi : piramida README, commit docs:, versi
6+web kontinumatang: pipeline penuhreview ketat + CODEOWNERSTrunk-Based Development + Monorepo bila satu tim banyak produk
6+rilis multi-versimatangreview ketatGitFlow — atau release ringan bila hanya dua versi hidup
satu timbanyak produk terkaitCI scoped per pathCODEOWNERS per wilayahMonorepo

Kombinasi di luar tabel tetap terbaca: cari baris terdekat, lalu sesuaikan dengan faktor pengali. Tim tiga orang dengan CI matang boleh lebih longgar dari barisnya; tim lima orang tanpa CI sebaiknya lebih ketat.

Alur Keputusan #

Empat pertanyaan tadi bisa dilipat menjadi satu alur — tiga pertanyaan terbesar membentuk jalannya, CI dan budaya review menentukan ketat gerbang di tiap ujung:

Ujung setiap jalur bukan status permanen. Proyek pribadi mendapat kontributor kedua; rilis terjadwal memperpendek ritmenya — alur ini dijalankan ulang setiap kali keadaan berubah, dan boleh mundur ke pola lebih sederhana sama seperti naik ke yang lebih berat.

Tiga Anti-Pattern #

Tiga kebiasaan paling merusak muncul bukan karena kurangnya alat, melainkan cara memilihnya:

  • Cargo-cult. Meniru pola tim lain tanpa memiliki masalah yang sama. GitFlow penuh di repository dua penulis menjawab pertanyaan yang tidak pernah ditanyakan siapa pun. Ujiannya satu kalimat: bila tidak bisa disebutkan pain apa yang dijawab sebuah aturan, aturan itu tiruan tanpa alasan.
  • Ganti workflow berkala. Pola baru terdengar modern hampir tiap tahun, dan biayanya selalu nyata: tim belajar ulang, konvensi riwayat patah di tengah, tag rilis terbentuk dalam dua gaya. Workflow ditukar hanya ketika pain nyata muncul dan pola lama terbukti tak menjawabnya.
  • Aturan tanpa dokumentasi alasan. “Review dua orang wajib” diwariskan tanpa catatan kenapa — dua tahun kemudian tak ada yang berani menghapusnya meski penyebabnya sudah hilang. Setiap aturan workflow dicatat lengkap dengan alasannya, persis pola berkas kontribusi di Workflow Documentasi .

Mulai Sederhana, Tambah Saat Nyeri #

Prinsip kerangka ini satu tarikan napas: mulai dari pola paling sederhana yang berfungsi, lalu tambahkan aturan hanya ketika nyeri nyata muncul — bukan ketika blog tim besar menyarankannya. Tim kecil sudah mengenal versi pendeknya: aturan baru layak ditambahkan hanya setelah masalah yang sama muncul dua kali. Tabel ini memetakan nyeri ke aturan yang sah dibelanya:

Pain nyataAturan yang layak ditambahkanPola
Eksperimen merusak pekerjaan stabilbranch isolasi per fiturFeature Branch
Push langsung merusak mainproteksi main + PR wajibTim Kecil
Tabrakan berulang di berkas samabranch pendek + sinkron rutinMenjaga Branch Tetap Sinkron
Produksi rusak, fitur setengah jadi terpaksa ikutjalur hotfix dari tagHotfix
Pengguna bertanya apa yang barubranch rilis, CHANGELOG, tagRelease
Kontribusi datang dari orang asingfork, triage, CONTRIBUTINGOpen Source
Riwayat banyak aplikasi tercampur satu reposcope commit + CODEOWNERS + sparse checkoutMonorepo
Dokumen berubah tanpa jejakrepo dokumen + commit docs: + versi terbitanDocumentasi

Aturan ditambah satu per satu, dan workflow yang sehat juga tahu menyusut: nyeri yang hilang membawa pulang aturan yang tak lagi dibela.

Rekap Delapan Workflow #

Sebelum melangkah, seluruh section terlipat dalam satu tabel:

WorkflowMenjawab masalahPeralatan kunci
Proyek Pribadisendirian tetap rapi dan tercadangmain-only, tag milestone, git bundle
Feature Branchfitur terisolasi dari pekerjaan stabilbranch, rebase, merge --no-ff
Hotfixdarurat pada versi yang sedang terbitbranch dari tag, merge balik dua jalur
Releaseterbitan terjadwal yang dapat diulangrelease/*, CHANGELOG, freeze, tag
Open Sourcekontribusi dari orang asingfork, pull request, triage, CONTRIBUTING
Tim Kecildua sampai lima orang tanpa birokrasimain terproteksi, PR kecil, squash merge
Monorepobanyak produk dalam satu rumahscope commit, CODEOWNERS, sparse checkout
Documentasirepository yang produknya kata-katapiramida README, commit docs:, versi terbitan

Matriks, alur, dan rekap di atas adalah peta — dan peta baru terasa setiap langkah kaki ditaruh di wilayahnya. Section Proyek Git adalah wilayah berjalan kaki itu: tujuh proyek terpandu, dari repository pribadi, feature branch, kolaborasi remote, code review, pemulihan riwayat, hooks, sampai simulasi rilis lengkap — tiap proyek melanjutkan keadaan sebelumnya dan semuanya dikerjakan nyata dari nol. Di sanalah seluruh workflow yang baru saja kita petakan menemui proyek, tim, dan keputusan kita sendiri.