Tips & Best Practices Git

Tips & Best Practices Git ✨

Kumpulan kebiasaan dan praktik terbaik yang membedakan penggunaan Git yang biasa-biasa saja dengan penggunaan yang profesional.


1. Commit yang Atomik

Satu commit = satu perubahan logis. Bukan satu file, bukan satu hari kerja.

# ❌ Buruk — terlalu banyak hal sekaligus
git commit -m "perbaiki bug, tambah fitur, update styling, refactor kode"

# ✅ Baik — satu hal per commit
git commit -m "Perbaiki bug kalkulasi diskon di keranjang"
git commit -m "Tambah validasi email di form registrasi"
git commit -m "Update warna tombol sesuai design system"

Manfaatnya:

  • Mudah di-revert jika ada masalah
  • Mudah dipahami saat git log
  • Code review lebih mudah

2. Pesan Commit yang Bermakna

Ikuti konvensi Conventional Commits untuk konsistensi:

# Format: <type>: <deskripsi singkat>

feat: tambah fitur login dengan Google OAuth
fix: perbaiki crash saat upload gambar > 5MB
docs: tambah panduan instalasi di README
style: format ulang kode dengan Prettier
refactor: ekstrak logika validasi ke helper function
test: tambah unit test untuk CartService
chore: update dependensi ke versi terbaru
perf: optimasi query pencarian produk

Deskripsi yang baik:

  • Gunakan kata kerja imperatif: "Tambah", "Perbaiki", "Hapus"
  • Maksimal 72 karakter di baris pertama
  • Jelaskan apa dan mengapa, bukan bagaimana

3. Selalu Pull Sebelum Push

# Rutinitas pagi yang baik:
git pull origin main

# Atau lebih aman dengan rebase:
git pull --rebase origin main

# Sebelum push branch fitur:
git fetch origin
git rebase origin/main

4. Jangan Commit File Sensitif

# File yang TIDAK BOLEH masuk repositori:
.env
*.pem
*.key
credentials.json
config/secrets.yml

# Jika terlanjur commit:
git rm --cached .env
echo ".env" >> .gitignore
git commit -m "Hapus file .env dari tracking"

# GANTI semua credential yang sudah ter-expose!
# Anggap credential tersebut sudah bocor.

5. Gunakan Alias untuk Perintah Panjang

# Setup alias Git yang berguna
git config --global alias.st status
git config --global alias.co checkout
git config --global alias.sw switch
git config --global alias.br branch
git config --global alias.lg "log --oneline --graph --all --decorate"
git config --global alias.undo "reset HEAD~1 --mixed"

# Sekarang bisa pakai:
git st          # git status
git sw main     # git switch main
git lg          # log grafis yang bagus
git undo        # batalkan commit terakhir

6. Gunakan Tags untuk Rilis

# Buat tag untuk versi rilis
git tag v1.0.0
git tag -a v1.0.0 -m "Rilis versi 1.0.0 - Fitur awal"

# Lihat semua tag
git tag

# Push tag ke remote
git push origin v1.0.0
git push origin --tags  # push semua tag

# Kembali ke versi tertentu
git checkout v1.0.0

7. Jaga Branch Tetap Bersih

# Hapus branch yang sudah di-merge
git branch -d feature/selesai

# Hapus semua branch lokal yang sudah di-merge ke main
git branch --merged main | grep -v 'main' | xargs git branch -d

# Bersihkan remote tracking branch yang sudah dihapus
git remote prune origin
git fetch --prune

8. Gunakan git bisect untuk Cari Bug

git bisect melakukan binary search di commit history untuk menemukan commit mana yang pertama kali memperkenalkan bug:

# Mulai bisect
git bisect start

# Tandai commit saat ini sebagai "bermasalah"
git bisect bad

# Tandai commit lama yang diketahui masih baik
git bisect good v1.0.0

# Git akan checkout commit di tengah-tengah
# Test apakah bug ada:
git bisect good  # jika tidak ada bug
git bisect bad   # jika bug ada

# Ulangi sampai Git menemukan commit penyebab bug
# Selesai:
git bisect reset

9. Perintah Darurat

# Lihat semua operasi Git yang pernah dilakukan (termasuk yang di-reset)
git reflog
# Berguna untuk memulihkan commit yang tampak sudah hilang!

# Kembalikan commit yang sudah terhapus dengan reset
git reflog
# Cari hash commit yang hilang, misal: abc1234
git checkout abc1234
# atau
git reset --hard abc1234

Ringkasan Kebiasaan Baik

✓ Commit sering dan atomik
✓ Tulis pesan commit yang bermakna
✓ Pull sebelum mulai bekerja
✓ Gunakan branch untuk setiap fitur/fix
✓ Jaga .gitignore tetap up-to-date
✓ Review perubahan sebelum commit (git diff)
✓ Hapus branch yang sudah selesai
✓ Jangan pernah force push ke main
✓ Jangan commit file sensitif
✓ Gunakan PR untuk kolaborasi

💡 Tips Terakhir: Git adalah skill yang dipelajari dengan cara memakainya setiap hari. Jangan takut melakukan kesalahan — hampir semua kesalahan di Git bisa dipulihkan dengan git reflog. Yang terpenting, jadikan Git bagian dari rutinitas harianmu dan kebiasaan baik ini akan terbentuk secara alami. Selamat belajar! 🚀

Sebelumnya

Informasi Kursus

Kursus

Git Dasar

Kategori

Workflow & Best Practices

Durasi Pelajaran

20 menit

Pelajaran dalam Kategori Ini