Cara Menulis Commit Message yang Baik di Git

Commit message yang baik adalah tanda seorang developer yang profesional dan peduli terhadap timnya. Bayangkan kamu perlu melacak kapan sebuah bug diperkenalkan ke dalam kode, atau...

Cara Menulis Commit Message yang Baik di Git

Commit message yang baik adalah tanda seorang developer yang profesional dan peduli terhadap timnya. Bayangkan kamu perlu melacak kapan sebuah bug diperkenalkan ke dalam kode, atau memahami alasan di balik perubahan yang dibuat dua bulan lalu. Riwayat commit yang ditulis dengan buruk โ€” penuh dengan pesan seperti "update", "fix", atau "asdfjkl" โ€” membuat pelacakan itu hampir mustahil. Artikel ini membahas cara menulis commit message yang informatif, konsisten, dan bermanfaat.

Mengapa Commit Message Penting?

Commit message bukan hanya catatan untuk dirimu sendiri. Ia adalah komunikasi dengan:

  • Rekan tim yang harus memahami perubahanmu saat code review.
  • Dirimu sendiri di masa depan ketika debug masalah yang muncul berbulan-bulan kemudian.
  • Alat otomasi seperti changelog generator atau CI/CD pipeline yang membaca pesan commit.

Format Dasar Commit Message yang Baik

Commit message yang baik memiliki struktur:

<tipe>(<scope>): <deskripsi singkat>

[body opsional โ€” penjelasan lebih detail]

[footer opsional โ€” referensi issue/ticket]

Contoh lengkap:

feat(auth): menambahkan validasi token JWT pada middleware

Token sebelumnya tidak divalidasi masa berlakunya sehingga
token kadaluarsa masih bisa digunakan untuk akses endpoint.

Closes #142

Conventional Commits โ€” Standar Industri

Conventional Commits adalah spesifikasi pesan commit yang banyak diadopsi industri. Format utamanya adalah tipe(scope): deskripsi. Berikut tipe-tipe yang umum digunakan:

  • feat โ€” Menambahkan fitur baru.
  • fix โ€” Memperbaiki bug.
  • docs โ€” Perubahan dokumentasi saja.
  • style โ€” Perubahan format/gaya kode (spasi, titik koma) tanpa mengubah logika.
  • refactor โ€” Refaktor kode tanpa menambah fitur atau memperbaiki bug.
  • test โ€” Menambah atau memperbaiki test.
  • chore โ€” Tugas rutin seperti update dependensi, konfigurasi build.
  • perf โ€” Peningkatan performa.
  • ci โ€” Perubahan konfigurasi CI/CD.

Contoh Commit Message yang Benar

feat(user): menambahkan fitur upload foto profil

fix(cart): memperbaiki kalkulasi total harga saat ada diskon

docs(readme): memperbarui panduan instalasi untuk Windows

refactor(api): memisahkan logika validasi ke dalam service class

chore: memperbarui versi laravel dari 10 ke 11

test(auth): menambahkan unit test untuk proses login gagal

Aturan Dasar Penulisan Commit Message

  1. Gunakan imperatif untuk deskripsi singkat: "menambahkan", "memperbaiki", "menghapus" โ€” bukan "ditambahkan" atau "sudah diperbaiki".
  2. Baris pertama maksimal 72 karakter agar mudah terbaca di log.
  3. Pisahkan subject dan body dengan baris kosong jika perlu penjelasan lebih.
  4. Jelaskan "mengapa", bukan hanya "apa". Apa yang diubah terlihat dari diff โ€” yang tidak terlihat adalah alasannya.
  5. Satu commit, satu perubahan logis. Jangan gabungkan perbaikan bug dan penambahan fitur dalam satu commit.

Commit Message yang Buruk vs. Baik

Perbandingan pesan commit yang sebaiknya dihindari vs. yang lebih baik:

BURUK:
update
fix bug
asd
ubah warna tombol dan perbaiki login dan tambah halaman profile

BAIK:
style(button): mengubah warna tombol CTA menjadi biru primer
fix(auth): memperbaiki redirect setelah login gagal
feat(profile): menambahkan halaman edit profil pengguna

Menambahkan Referensi Issue atau Ticket

Jika timmu menggunakan issue tracker seperti GitHub Issues atau Jira, sertakan referensinya di footer commit:

fix(payment): memperbaiki error saat gateway timeout

Payment gateway mengembalikan status 503 namun aplikasi
tidak menanganinya dan langsung menampilkan error 500.

Fixes #234
Refs: PROJ-891

Di GitHub, kata kunci seperti Fixes, Closes, atau Resolves akan otomatis menutup issue yang direferensikan ketika commit tersebut di-merge ke branch utama.

Menggunakan git commit Tanpa Flag -m untuk Pesan Panjang

Untuk pesan yang lebih panjang dengan body, jalankan commit tanpa flag -m agar editor teks terbuka:

git commit

Git akan membuka editor default (biasanya Vim atau nano). Untuk mengubah editor default ke VS Code:

git config --global core.editor "code --wait"

Kesimpulan

Menulis commit message yang baik adalah kebiasaan kecil yang berdampak besar pada kualitas kolaborasi tim dan kemudahan pemeliharaan kode jangka panjang. Adopsi Conventional Commits sebagai standar, tuliskan alasan di balik perubahan, dan jaga setiap commit tetap fokus pada satu hal. Riwayat commit yang bersih dan informatif adalah salah satu tanda profesionalisme seorang developer yang benar-benar peduli terhadap timnya dan kualitas kodenya.

commit message git conventional commits git commit message cara menulis commit best practice git pesan commit
Bagikan artikel
Kembali

Komentar (0)

Punya pertanyaan atau tambahan? Tulis di bawah โ€” tak perlu login.

Membalas komentarโ€ฆ batal

Belum ada komentar. Jadilah yang pertama!

๐Ÿš€ Partner Recommendation

Butuh Source Code & Aplikasi Premium?

Download aplikasi Laravel, POS, Sekolah, Klinik, ERP, dan source code siap pakai di GudangCode.

GudangCode
  • โœ” Source Code Premium
  • โœ” Sistem Siap Pakai
  • โœ” Lifetime Update
  • โœ” Membership Lifetime
  • โœ” Update Aplikasi Harian
Daftar Membership โ†’