Kuasai alur kerja fundamental Git! Pelajari cara melihat status file, menambahkan perubahan ke Staging Area (Index) dengan `git add`, dan menyimpan snapshot ke histori dengan `git commit`.
Tiga Jurus Andalan Git: status, add, dan commit!
Udah berhasil bikin repositori Git pake git init? Mantap! "Mesin waktu"-mu udah nyala. Sekarang, gimana caranya kita mulai "nyatet" perubahan-perubahan yang kita buat di kode kita?
Ada tiga perintah utama yang bakal jadi siklus kerjamu sehari-hari pake Git. Anggap aja ini kayak ritual sebelum nyimpen "snapshot" penting dari proyekmu:
git status: "Ada apa aja nih yang berubah?" -> Ngecek kondisi file-file di proyekmu.
git add <file>: "Oke, perubahan yang ini penting, siapin buat disimpen!" -> Nambahin perubahan file ke "area tunggu" (Staging Area).
git commit -m "Pesan": "Sip, simpen perubahan yang udah disiapin ini ke catatan histori!" -> Nyimpen snapshot permanen dari Staging Area ke repositori lokal.
Yuk, kita bedah satu-satu biar makin paham!
Konsep Penting: Tiga "Area" Utama di Git Lokal
Sebelum kita masuk ke perintahnya, penting buat ngerti ada tiga "area" atau "kondisi" utama buat file-filemu di repositori Git lokal:
Working Directory (Direktori Kerja):
Ini adalah folder proyekmu yang lagi kamu liat dan edit isinya pake teks editor (kayak VS Code).
Semua file yang kamu bikin, ubah, atau hapus, awalnya ada di sini.
Staging Area (atau Index):
Bayangin ini kayak "keranjang belanja" atau "area tunggu" sebelum kamu bener-bener "bayar" (commit).
Kamu "masukin" (stage) perubahan-perubahan dari Working Directory yang udah siap buat disimpen ke Staging Area ini pake perintah git add.
Gak semua perubahan di Working Directory harus langsung masuk ke Staging Area. Kamu bisa milih-milih mana aja yang mau kamu "bungkus" jadi satu commit. Ini ngasih kamu kontrol buat bikin commit yang logis dan terorganisir (misal, satu commit buat satu fitur atau satu perbaikan bug).
Repository Lokal (.git directory):
Ini adalah "brankas" atau "database" tempat Git nyimpen semua snapshot permanen (commit) dari proyekmu beserta seluruh historinya.
Pas kamu git commit, Git ngambil semua yang ada di Staging Area, bikin snapshot-nya, terus nyimpen snapshot itu secara permanen di repositori lokal (di dalem folder .git).
Alur Kerja Umumnya:
(Diagram ini menggambarkan alur utama. Proses kembali dari Repository atau Staging Area ke Working Directory melibatkan perintah lain yang akan dibahas nanti atau sudah disinggung di "Membatalkan Perubahan").
1. git status: Ngintip Kondisi File Proyekmu
Perintah git status ini bakal jadi perintah yang paling sering kamu ketik! Dia kayak "asisten pribadi" yang ngasih tau kamu kondisi terkini dari file-file di Working Directory dan Staging Area-mu.
Cara Pake: Cukup ketik di terminal (pas kamu lagi ada di dalem folder repositori Git-mu):
bash
git status
Informasi yang Ditampilin:
Lagi ada di branch mana.
Apakah ada file yang baru dibuat tapi belum dilacak Git (Untracked files).
Apakah ada file yang udah dilacak Git tapi isinya diubah di Working Directory dan belum di-stage (Changes not staged for commit / Modified).
Apakah ada file yang perubahannya udah di-stage dan siap di-commit (Changes to be committed / Staged).
Apakah Working Directory-mu "bersih" (gak ada perubahan yang belum di-commit).
Git juga sering ngasih saran perintah apa yang bisa kamu pake selanjutnya (misal, git add <file>... atau git restore <file>...).
Contoh Output git status:
bash
On branch mainYour branch is up to date with 'origin/main'.Changes not staged for commit: (use "git add <file>..." to update what will be committed) (use "git restore <file>..." to discard changes in working directory) modified: index.htmlUntracked files: (use "git add <file>..." to include in what will be committed) style.cssno changes added to commit (use "git add" and/or "git commit -a")
Dari output di atas, kita tau:
index.html udah diubah tapi belum di-stage.
style.css itu file baru yang belum dilacak Git.
Biasain diri buat ngejalanin git status sesering mungkin biar kamu selalu tau "ada apa" di proyekmu.
2. git add <file>: Masukin Perubahan ke "Keranjang Belanja" (Staging Area)
Setelah kamu ngelakuin perubahan di Working Directory (bikin file baru, ngedit file, atau ngehapus file) dan git status nunjukin ada perubahan itu, langkah berikutnya adalah milih perubahan mana aja yang mau kamu siapin buat di-commit. Ini dilakuin pake perintah git add.
Cara Pake:
Nambahin satu file spesifik:
bash
git add namafile.htmlgit add gambar/logo.png
Nambahin beberapa file sekaligus:
bash
git add file1.js file2.css
Nambahin SEMUA perubahan (file baru, file diubah, file dihapus) di direktori saat ini dan semua sub-direktorinya:
bash
git add .# (Titik . artinya direktori saat ini)
Atau kadang orang pake:
bash
git add -A# ataugit add --all
Perintah git add . dan git add -A itu sering banget dipake, tapi pastiin kamu udah ngecek git status dulu biar gak salah nambahin file yang gak diinginkan.
Nambahin semua file dengan pola tertentu (hati-hati):
bash
git add *.txt # Nambahin semua file .txt
Apa yang Terjadi Setelah git add?
Perubahan yang kamu add itu pindah dari Working Directory ke Staging Area.
Kalau kamu jalanin git status lagi, file-file yang udah di-add bakal muncul di bawah bagian "Changes to be committed".
Kenapa Ada Staging Area? Kenapa Gak Langsung Commit Aja?
Staging Area ini ngasih kamu fleksibilitas buat:
Bikin commit yang lebih terorganisir: Kamu bisa aja ngedit 5 file, tapi cuma mau nge-commit perubahan dari 2 file dulu karena itu terkait satu fitur. 3 file sisanya bisa kamu add dan commit nanti sebagai bagian dari fitur lain.
Review perubahan sebelum di-commit: Staging Area kayak tempat "transit" buat ngecek ulang apa aja yang mau kamu simpen permanen.
Setelah kamu puas sama isi Staging Area-mu, saatnya buat nyimpen snapshot permanen dari kondisi itu ke histori repositori lokalmu. Ini dilakuin pake perintah git commit.
Cara Pake:
Yang paling umum adalah pake opsi -m (message) buat langsung nulis pesan commit di perintahnya:
bash
git commit -m "Menambahkan fitur login pengguna"
Pesan Commit yang Baik itu PENTING!
Tulis pesan yang singkat tapi deskriptif, ngejelasin APA yang kamu ubah dan (kalau perlu) KENAPA.
Biasanya diawali kata kerja imperatif (misal, "Tambah...", "Perbaiki...", "Hapus...", "Ubah...").
Contoh pesan commit yang bagus:
git commit -m "Tambah halaman Kontak dengan formulir"
git commit -m "Perbaiki bug tampilan tombol di Firefox"
git commit -m "Update teks di bagian Tentang Kami"
Pesan commit yang jelas bakal ngebantu banget pas kamu (atau timmu) mau liat histori dan ngertiin perubahan apa aja yang udah dilakuin.
Kalau kamu jalanin git committanpa opsi -m, Git bakal ngebuka teks editor default yang udah kamu konfigurasi (atau editor default sistem) buat kamu nulis pesan commit yang lebih panjang (baris pertama jadi subjek, baris berikutnya jadi body pesan). Setelah nulis pesan dan nyimpen filenya, tutup editor itu, dan commit bakal selesai.
Apa yang Terjadi Setelah git commit?
Git ngambil semua file yang ada di Staging Area.
Bikin "snapshot" permanen dari kondisi file-file itu.
Snapshot ini disimpen di repositori lokal (folder .git) dengan ID unik (disebut commit hash).
Staging Area jadi kosong lagi (siap buat git add berikutnya).
Working Directory-mu jadi "bersih" lagi (kalau semua perubahan udah di-commit). git status bakal bilang "nothing to commit, working tree clean".
Siklus add dan commit ini bakal kamu lakuin berulang-ulang selama kamu ngembangin proyekmu. Bikin perubahan -> git add -> git commit. Bikin perubahan lagi -> git add -> git commit. Dan seterusnya.
(Opsional) Shortcut: git commit -a -m "Pesan" atau git commit -am "Pesan"
Ada shortcut buat nge-add file yang udah pernah di-commit sebelumnya (udah terlacak Git) dan udah kamu modifikasi, terus langsung nge-commit, tanpa perlu git add manual lagi.
Perintahnya: git commit -a -m "Pesan commit" atau git commit -am "Pesan commit"
PERHATIAN: Ini TIDAK AKAN nge-add file yang baru dibuat (untracked files). File baru tetep harus di-add manual dulu sebelum bisa di-commit.
Banyak developer lebih suka git add secara eksplisit biar lebih kontrol apa aja yang masuk ke commit, tapi shortcut ini bisa berguna buat perubahan kecil yang cepet.
Menguasai alur kerja git status, git add, dan git commit ini adalah fondasi paling dasar dan paling penting dalam pake Git. Biasain diri buat nge-commit sering-sering dengan pesan yang jelas setiap kali kamu nyelesaiin satu bagian kecil pekerjaan yang logis.
Dengan begini, "mesin waktu"-mu bakal punya banyak "checkpoint" yang berguna, jadi kalau ada apa-apa, kamu bisa dengan gampang balik ke kondisi sebelumnya.
Di materi berikutnya, kita bakal liat gimana cara "nengok ke masa lalu" dan ngeliat histori commit yang udah kita buat pake git log.
Kuis Alur Kerja Dasar Git (Status, Add, Commit)
Pertanyaan 1 dari 5
Perintah Git apa yang digunakan untuk melihat status file-file di working directory dan staging area Anda (misalnya, file mana yang diubah, mana yang baru, mana yang siap di-commit)?