Belajar Git untuk Pemula: Konsep dan Perintah yang Benar-Benar Dipakai
Git adalah salah satu alat yang hampir pasti kamu pakai di pekerjaan software engineering, apa pun bahasa atau framework-nya. Sayangnya, banyak pemula menunda belajar Git karena terlihat rumit — penuh istilah seperti commit, branch, merge, dan rebase.
Kabar baiknya: untuk bekerja sehari-hari, kamu hanya perlu memahami beberapa konsep inti dan segelintir perintah. Artikel ini membahas keduanya.
Apa itu Git?
Git adalah version control system — sistem yang mencatat riwayat perubahan file dari waktu ke waktu. Dengan Git kamu bisa:
- melihat apa yang berubah, kapan, dan oleh siapa,
- kembali ke versi sebelumnya kalau ada yang rusak,
- mengerjakan beberapa fitur secara paralel tanpa saling mengganggu,
- berkolaborasi dengan orang lain di codebase yang sama.
GitHub berbeda dengan Git. GitHub adalah layanan yang menyimpan repository Git secara online dan menyediakan fitur kolaborasi seperti Pull Request, issue, dan code review.
Konsep inti yang perlu dipahami
Repository
Repository (repo) adalah folder proyek yang riwayatnya dicatat oleh Git. Di dalamnya ada folder tersembunyi .git yang menyimpan seluruh riwayat.
Commit
Commit adalah titik simpan berisi sekumpulan perubahan beserta pesan yang menjelaskannya. Anggap seperti checkpoint di game: kamu bisa melihat dan kembali ke checkpoint mana pun.
Staging area
Sebelum di-commit, perubahan dipilih dulu ke staging area. Ini memungkinkanmu memilih perubahan mana yang masuk ke satu commit, sehingga setiap commit tetap fokus.
Branch
Branch adalah jalur pengembangan terpisah. Branch utama biasanya bernama main. Saat mengerjakan fitur baru, kamu membuat branch sendiri supaya main tetap stabil.
Merge
Merge menggabungkan perubahan dari satu branch ke branch lain — misalnya dari branch fitur ke main setelah fiturnya selesai.
Remote
Remote adalah salinan repository di tempat lain, biasanya di GitHub. Kamu push untuk mengirim commit ke remote dan pull untuk mengambil perubahan dari remote.
Perintah dasar yang dipakai sehari-hari
Menyiapkan identitas (sekali saja)
git config --global user.name "Nama Kamu"
git config --global user.email "email@contoh.com"
Memulai atau mengambil repository
# membuat repository baru di folder saat ini
git init
# menyalin repository yang sudah ada dari GitHub
git clone https://github.com/username/nama-repo.git
Melihat status
git status
Perintah ini paling sering dipakai. Ia menunjukkan file mana yang berubah, mana yang sudah di-staging, dan kamu sedang di branch apa. Kalau bingung, jalankan git status.
Menyimpan perubahan
# memilih file yang akan di-commit
git add src/app.ts
# atau memilih semua perubahan
git add .
# membuat commit dengan pesan
git commit -m "Tambah validasi email di form registrasi"
Bekerja dengan branch
# membuat branch baru dan langsung pindah ke sana
git switch -c feature/validasi-email
# pindah ke branch lain
git switch main
# melihat daftar branch
git branch
Sinkronisasi dengan GitHub
# mengirim branch ke GitHub
git push -u origin feature/validasi-email
# mengambil perubahan terbaru dari GitHub
git pull
Melihat riwayat
git log --oneline
Alur kerja sederhana untuk satu fitur
Berikut alur yang dipakai di banyak tim, dari awal sampai fitur siap di-review:
- Pastikan
mainterbaru:git switch mainlalugit pull. - Buat branch fitur:
git switch -c feature/nama-fitur. - Tulis kode, lalu commit secara bertahap dengan pesan yang jelas.
- Push branch ke GitHub:
git push -u origin feature/nama-fitur. - Buka Pull Request di GitHub agar perubahanmu bisa di-review.
- Setelah disetujui, Pull Request di-merge ke
main.
Langkah 5 dan 6 dibahas lengkap di Apa Itu Pull Request?.
Menulis pesan commit yang baik
Pesan commit adalah dokumentasi untuk dirimu di masa depan dan untuk rekan tim. Beberapa kebiasaan yang membantu:
- Jelaskan apa yang berubah dan kenapa, bukan hanya "update" atau "fix".
- Satu commit, satu tujuan. Jangan campur perbaikan bug dengan fitur baru.
- Singkat di baris pertama. Detail tambahan bisa ditulis di baris berikutnya.
Contoh yang kurang membantu dan yang lebih baik:
| Kurang membantu | Lebih baik |
|---|---|
fix | Perbaiki error saat email kosong di form login |
update code | Pisahkan logika validasi ke fungsi terpisah |
wip | Tambah endpoint daftar pesanan (belum ada paginasi) |
Kesalahan umum pemula dan cara mengatasinya
Commit ke main langsung
Biasakan selalu membuat branch untuk setiap perubahan. Ini melatih kebiasaan yang dipakai tim dan membuat main tetap aman.
Commit terlalu besar
Perubahan ratusan baris dalam satu commit sulit dipahami dan sulit di-review. Commit lebih sering dengan perubahan yang lebih kecil.
Takut conflict
Conflict terjadi saat dua perubahan menyentuh baris yang sama. Git akan menandai bagian yang bentrok; tugasmu adalah memilih versi yang benar, menyimpan file, lalu commit. Conflict adalah bagian normal dari kerja tim, bukan tanda kamu melakukan kesalahan.
Menyimpan file rahasia ke repository
Jangan pernah commit file berisi password, API key, atau token. Gunakan file .gitignore untuk mengecualikan file seperti .env.
Cara terbaik belajar Git: pakai terus
Git paling cepat dipahami lewat pemakaian rutin. Simpan setiap proyek — sekecil apa pun — di repository Git, push ke GitHub, dan biasakan bekerja lewat branch. Setelah perintah dasar terasa alami, kamu siap masuk ke kolaborasi lewat Pull Request dan code review.
Kesimpulan
Git terlihat rumit karena istilahnya banyak, tetapi pekerjaan sehari-hari hanya membutuhkan beberapa konsep inti — repository, commit, branch, merge, remote — dan segelintir perintah. Kuncinya adalah membiasakan alur kerja yang benar sejak awal.
Kalau ingin berlatih Git dan Pull Request dalam kondisi yang mendekati kerja nyata, lihat simulasi kerja software engineer di KodingCamp, tempat setiap perubahan masuk lewat Pull Request dan di-review. Gambaran alur kerja lengkapnya ada di Software Engineer Workflow.