Git mencegah file saling timpa bukan karena semua orang bekerja pada folder berbeda, melainkan karena setiap perubahan memiliki riwayat, cabang, dan proses penggabungan yang bisa ditinjau.
Mulai repository dengan aturan yang disepakati
git init
git branch -M main
git add .
git commit -m "chore: initialize project"
git remote add origin git@github.com:team/inventory-app.git
git push -u origin mainTambahkan .gitignore sejak commit pertama. File environment, cache, vendor hasil instalasi, dan upload pengguna tidak seharusnya masuk repository.
Satu pekerjaan, satu branch
git switch main
git pull --ff-only
git switch -c feature/login-rate-limit
# kerjakan perubahan
git add src tests
git commit -m "feat(auth): add login rate limiting"
git push -u origin feature/login-rate-limitMenghadapi konflik tanpa panik
Konflik berarti Git menemukan dua perubahan pada bagian yang sama dan tidak bisa memilih secara otomatis. Ambil perubahan terbaru dari main, selesaikan tanda konflik di editor, jalankan test, lalu commit hasil resolusinya.
git fetch origin
git rebase origin/main
# perbaiki file konflik
git add path/to/file.php
git rebase --continue
git push --force-with-lease--force-with-lease lebih aman daripada --force karena menolak push jika branch remote berubah tanpa sepengetahuan Anda.
Aturan tim yang membuat Git efektif
Perubahan masuk melalui pull request dan lolos pemeriksaan otomatis.
Pisahkan refactor besar dari fitur bisnis agar reviewer memahami risiko.
Gunakan secret manager atau environment variable.
Riwayat tetap ada; daftar branch tidak perlu menjadi arsip.
Git tidak menggantikan komunikasi. Issue yang jelas, pull request yang fokus, dan review yang menghargai konteks adalah bagian terpenting dari kolaborasi.
