Git memiliki banyak command, tetapi dalam aktivitas development sehari-hari hanya beberapa yang paling sering digunakan.
Command berikut mencakup alur dasar mulai dari mengecek kondisi repository, membuat branch, menyimpan perubahan sebagai commit, melakukan sinkronisasi dengan remote, hingga membatalkan perubahan dengan aman.

Mengecek Kondisi Repository
Sebelum mulai mengubah kode atau membuat commit, periksa kondisi repository:
git status
Command ini menunjukkan:
- Branch yang sedang aktif
- File yang berubah
- File yang sudah masuk staging
- File baru yang belum dilacak
- Posisi branch lokal terhadap remote
Untuk melihat isi perubahan yang belum dimasukkan ke staging:
git diff
Jika ingin melihat perubahan yang sudah berada di staging:
git diff --staged
Riwayat commit dapat dilihat dalam format ringkas:
git log --oneline -10
Opsi -10 membatasi output pada sepuluh commit terakhir.
Mengelola Branch
Branch digunakan untuk memisahkan pekerjaan agar perubahan tidak langsung bercampur dengan branch utama.
Lihat seluruh branch lokal:
git branch
Pindah ke branch lain:
git switch <branch>
Buat branch baru sekaligus berpindah ke branch tersebut:
git switch -c <branch>
Contohnya:
git switch -c feature/login
Gunakan nama branch yang menjelaskan tujuan perubahan, misalnya:
feature/login
fix/payment-validation
docs/docker-guide
chore/update-dependency
Sebelum membuat branch baru, pastikan branch sumber sudah sesuai dan memiliki perubahan terbaru.
Memasukkan Perubahan ke Staging
Git menggunakan staging area untuk memilih perubahan yang akan dimasukkan ke commit.
Stage satu file:
git add <file>
Contohnya:
git add src/Login.vue
Stage seluruh perubahan dalam direktori project:
git add .
git add . memang praktis, tetapi tetap periksa perubahan menggunakan git status agar file yang tidak diperlukan tidak ikut masuk ke commit.
Jika salah memasukkan file ke staging:
git restore --staged <file>
Command tersebut hanya mengeluarkan file dari staging. Perubahan pada file tetap tersedia.
Membuat Commit
Setelah perubahan masuk staging, simpan sebagai commit:
git commit -m "pesan"
Contohnya:
git commit -m "fix: validate login form"
Pesan commit sebaiknya menjelaskan perubahan yang dilakukan, bukan sekadar aktivitas umum.
Kurang jelas:
update
fix bug
perubahan terbaru
Lebih jelas:
fix: prevent duplicate form submission
feat: add user profile endpoint
docs: add local setup instructions
Satu commit sebaiknya berisi satu perubahan yang saling berkaitan. Ini membuat proses review, pencarian masalah, dan rollback lebih mudah.
Mengambil Informasi dari Remote
Gunakan fetch untuk mengambil informasi terbaru dari remote tanpa langsung menggabungkannya ke branch aktif:
git fetch origin
Setelah itu, kondisi branch lokal dan remote dapat diperiksa terlebih dahulu.
Untuk mengambil sekaligus menggabungkan perubahan dari branch remote:
git pull origin <branch>
Contohnya:
git pull origin development
Secara umum, git pull menjalankan proses fetch, kemudian mengintegrasikan perubahan remote sesuai konfigurasi Git yang digunakan.
Pastikan pekerjaan lokal sudah disimpan sebagai commit atau stash sebelum melakukan pull jika terdapat perubahan yang berpotensi bertabrakan.
Mengirim Commit ke Remote
Untuk mengirim commit dari branch lokal:
git push origin <branch>
Saat branch baru pertama kali dikirim, gunakan:
git push -u origin <branch>
Opsi -u menghubungkan branch lokal dengan branch remote sebagai upstream.
Setelah upstream terpasang, push berikutnya cukup menggunakan:
git push
Contoh alurnya:
git switch -c feature/login
git add .
git commit -m "feat: add login page"
git push -u origin feature/login
Branch yang sudah dikirim ke remote kemudian dapat digunakan untuk membuat pull request atau merge request.
Menyimpan Perubahan Sementara
Jika perlu berpindah branch tetapi perubahan belum siap dijadikan commit, simpan sementara menggunakan stash:
git stash
Untuk melihat daftar stash:
git stash list
Kembalikan perubahan terakhir yang disimpan:
git stash pop
git stash pop menerapkan perubahan lalu menghapus stash tersebut jika prosesnya berhasil.
Jika ingin menerapkan perubahan tanpa langsung menghapus stash:
git stash apply
Membatalkan Perubahan File
Batalkan perubahan pada file yang belum masuk staging:
git restore <file>
Contohnya:
git restore src/Login.vue
Command tersebut mengembalikan file ke kondisi commit terakhir.
Perubahan lokal pada file akan hilang, jadi pastikan isinya memang sudah tidak diperlukan.
Untuk membatalkan staging tanpa menghapus perubahan file:
git restore --staged <file>
Perbedaannya:
| Command | Dampak |
|---|---|
git restore <file> |
Membuang perubahan lokal pada file |
git restore --staged <file> |
Mengeluarkan file dari staging |
git stash |
Menyimpan perubahan untuk digunakan kembali |
Command yang Perlu Diwaspadai
Beberapa command dapat menghapus perubahan lokal secara permanen:
git reset --hard
Command tersebut mengembalikan tracked files ke commit tujuan dan membuang perubahan lokal yang belum disimpan.
Command berikut menghapus file dan direktori yang belum dilacak:
git clean -fd
Sebelum menggunakan git clean, lakukan preview terlebih dahulu:
git clean -nd
Huruf n berarti dry run, sehingga Git hanya menunjukkan file yang akan dihapus tanpa benar-benar menghapusnya.
Alur Kerja Harian
Contoh alur Git sederhana saat mengerjakan fitur:
git status
git switch -c feature/nama-fitur
git add <file>
git commit -m "feat: deskripsi perubahan"
git fetch origin
git push -u origin feature/nama-fitur
Setelah branch tersedia di remote, perubahan dapat dilanjutkan melalui pull request atau merge request.
Ringkasan Command
| Command | Fungsi |
|---|---|
git status |
Mengecek kondisi repository |
git diff |
Melihat perubahan file |
git log --oneline -10 |
Melihat riwayat commit |
git switch <branch> |
Berpindah branch |
git switch -c <branch> |
Membuat branch baru |
git add <file> |
Memasukkan file ke staging |
git commit -m "pesan" |
Membuat commit |
git fetch origin |
Mengambil informasi terbaru dari remote |
git pull origin <branch> |
Mengambil dan mengintegrasikan perubahan |
git push -u origin <branch> |
Push branch sekaligus mengatur upstream |
git restore <file> |
Membuang perubahan lokal pada file |
git restore --staged <file> |
Mengeluarkan file dari staging |
git stash |
Menyimpan perubahan sementara |
git stash pop |
Mengembalikan stash terakhir |
Kesimpulan
Command Git yang digunakan sehari-hari tidak harus dihafalkan sekaligus.
Mulailah dari memahami alurnya: periksa perubahan, gunakan branch, pilih file yang akan dimasukkan ke staging, buat commit yang jelas, lalu kirim branch ke remote.
Untuk command yang dapat membuang perubahan seperti restore, reset --hard, dan clean -fd, periksa kembali kondisi repository sebelum menjalankannya.