gitcommitstagingPemula3 mnt baca

Git Add dan Commit: Menyimpan Perubahan

Pahami staging area, cara memilih perubahan dengan git add, dan menyimpan snapshot dengan git commit.

Alur dua langkah: add lalu commit

Ingat tiga area kerja dari modul pengenalan? Menyimpan perubahan di Git selalu dua langkah:

  1. git add → memindahkan perubahan dari working directory ke staging area (ruang tunggu).
  2. git commit → menyimpan isi staging area ke repository sebagai snapshot permanen.

Kenapa dua langkah? Supaya kamu bisa memilih perubahan mana yang masuk ke satu commit. Misalnya kamu mengubah 5 file tapi hanya 3 yang berkaitan dengan satu fitur, kamu bisa commit 3 file itu dulu, sisanya nanti. Hasilnya riwayat yang rapi dan mudah dibaca.

git add: memilih apa yang disimpan

bash
# tambah satu file spesifik
git add index.html

# tambah semua perubahan di folder saat ini
git add .

# tambah semua perubahan di seluruh proyek (dari subfolder mana pun)
git add -A

Kapan pakai yang mana? Untuk proyek kecil dan kamu yakin semua perubahan memang satu paket, git add . paling praktis. Untuk proyek yang lebih serius, tambah file satu per satu supaya commit-mu fokus.

git commit: menyimpan snapshot

bash
git commit -m "Tambah halaman tentang"

Flag -m artinya message, pesan yang menjelaskan apa dan kenapa perubahan ini dibuat. Contoh output sukses:

bash
[main 3f2a1b9] Tambah halaman tentang
 1 file changed, 24 insertions(+)

Hash 3f2a1b9 adalah ID unik commit tersebut. Kamu akan memakainya nanti saat ingin melihat atau kembali ke versi ini.

Pesan commit dibaca oleh dirimu di masa depan dan oleh timmu. Aturannya sederhana:

  • Pakai kalimat perintah: "Tambah fitur login", bukan "Menambahkan fitur login" atau "fitur login nih"
  • Satu commit = satu perubahan logis. Jangan campur "perbaiki bug + tambah fitur + rapikan kode" dalam satu commit
  • Kalau perubahannya butuh penjelasan, tulis baris pertama singkat, baris kosong, lalu penjelasan

Contoh yang baik:

bash
git commit -m "Perbaiki validasi email di form daftar"
git commit -m "Tambah halaman 404 dengan tombol kembali"

Contoh yang buruk:

bash
git commit -m "update"
git commit -m "fix"
git commit -m "asdasd"

Pesan seperti "update" tidak memberi informasi apa pun saat kamu melihat riwayat tiga bulan kemudian.

Latihan mini

Coba rangkaian lengkap ini di repository hasil git init:

bash
echo "Halo Git" > halo.txt
git add halo.txt
git commit -m "Tambah file halo.txt"
git log --oneline

Output terakhir menunjukkan commit-mu tercatat:

bash
3f2a1b9 (HEAD -> main) Tambah file halo.txt

Selamat, kamu baru saja membuat snapshot pertamamu.

Catatan teknis: Commit menyimpan snapshot seluruh proyek, bukan hanya file yang diubah. Tapi Git pintar: file yang tidak berubah tidak diduplikasi, ia hanya menunjuk ke data yang sama. Jadi commit itu murah dan cepat walau proyekmu besar. Satu hal penting: jangan pernah commit file rahasia seperti password atau API key. Sekali masuk riwayat, file itu sulit dihapus bersih. File seperti itu diatur lewat .gitignore yang dibahas di modul tersendiri.

Ringkasan

git add memilih, git commit -m menyimpan. Lakukan commit sering-sering dalam unit kecil yang jelas, dan tulis pesan yang menjelaskan kenapa perubahan itu ada. Kebiasaan ini yang membedakan repository rapi dengan repository berantakan.