Cheat Sheet Git
Terakhir diperbarui
Setup & konfigurasi
Pengaturan sekali jalan agar commitmu tercatat atas namamu dengan benar.
| Perintah | Kegunaan |
|---|---|
git config --global user.name "Ada" | Mengatur nama untuk commitmu |
git config --global user.email you@x.com | Mengatur email untuk commitmu |
git config --list | Menampilkan semua konfigurasi saat ini |
git config --global init.defaultBranch main | Memberi nama main pada branch pertama repo baru |
git config --global core.editor "code --wait" | Mengatur editor default |
git --version | Mencetak versi Git yang terinstal |
Membuat & clone
Memulai repository baru atau menyalin yang sudah ada.
| Perintah | Kegunaan |
|---|---|
git init | Membuat repo baru di folder saat ini |
git clone <url> | Menyalin repo remote ke lokal |
git clone <url> mydir | Clone ke folder dengan nama tertentu |
git clone --depth 1 <url> | Shallow clone (hanya commit terbaru) |
git clone -b dev <url> | Clone lalu pindah ke branch dev |
Staging & commit
Mencatat perubahan ke dalam riwayat proyek.
| Perintah | Kegunaan |
|---|---|
git add file.txt | Stage satu file |
git add . | Stage semua perubahan di direktori saat ini |
git add -p | Stage potongan perubahan tertentu secara interaktif |
git commit -m "message" | Commit perubahan yang sudah ada di staging |
git commit -am "message" | Stage file yang sudah dilacak lalu commit |
git commit --amend | Mengedit commit terakhir |
git rm file.txt | Menghapus file dan memasukkan penghapusannya ke staging |
Branching
Mengerjakan perubahan secara terpisah.
| Perintah | Kegunaan |
|---|---|
git branch | Menampilkan daftar branch lokal |
git branch feature | Membuat branch baru |
git switch feature | Pindah ke branch yang sudah ada |
git switch -c feature | Membuat branch dan pindah ke sana dalam satu langkah |
git checkout feature | Cara lama untuk pindah branch |
git branch -d feature | Menghapus branch yang sudah digabungkan (merge) |
git branch -m newname | Mengganti nama branch saat ini |
Merge & rebase
Menggabungkan hasil kerja dari dua branch.
| Perintah | Kegunaan |
|---|---|
git merge feature | Merge feature ke branch saat ini |
git merge --no-ff feature | Selalu membuat merge commit |
git rebase main | Memutar ulang commitmu di atas main |
git rebase -i HEAD~3 | Mengedit 3 commit terakhir secara interaktif |
git rebase --continue | Melanjutkan setelah konflik diselesaikan |
git rebase --abort | Membatalkan rebase yang sedang berjalan |
git cherry-pick <hash> | Menerapkan satu commit ke branch ini |
Remote (push, pull, fetch)
Menyinkronkan repo lokal dengan remote seperti GitHub.
| Perintah | Kegunaan |
|---|---|
git remote -v | Menampilkan daftar remote yang terkonfigurasi |
git remote add origin <url> | Menghubungkan remote bernama origin |
git fetch | Mengunduh perubahan remote tanpa merge |
git pull | Fetch lalu merge branch remote |
git push | Mengunggah commit ke remote |
git push -u origin main | Push sekaligus mengatur branch upstream |
git push origin --delete feature | Menghapus branch remote |
Memeriksa (status, log, diff)
Melihat apa yang berubah dan apa yang sedang terjadi.
| Perintah | Kegunaan |
|---|---|
git status | Menampilkan file yang sudah di staging, belum di staging, dan belum dilacak |
git log | Menampilkan riwayat commit |
git log --oneline --graph | Riwayat ringkas dengan grafik branch |
git diff | Perubahan yang belum di staging dibandingkan index |
git diff --staged | Perubahan di staging dibandingkan commit terakhir |
git show <hash> | Menampilkan perubahan dari satu commit |
git blame file.txt | Menampilkan siapa yang terakhir mengubah setiap baris |
Membatalkan perubahan
Pulih dari kesalahan dengan aman.
| Perintah | Kegunaan |
|---|---|
git restore file.txt | Membuang perubahan yang belum di staging pada sebuah file |
git restore --staged file.txt | Mengeluarkan file dari staging (perubahan tetap ada) |
git reset --soft HEAD~1 | Membatalkan commit terakhir, perubahan tetap di staging |
git reset --hard HEAD~1 | Membatalkan commit terakhir dan membuang perubahannya |
git revert <hash> | Membuat commit baru yang membatalkan commit lain |
git stash | Menyimpan perubahan untuk nanti |
git stash pop | Menerapkan kembali stash terbaru |
Semua perintah Git yang sering kamu pakai, dalam satu halaman. Cheat sheet Git ini adalah referensi cepat untuk version control sehari-hari: mengatur Git, staging dan commit, branching, merge dan rebase, sinkronisasi dengan remote, dan membatalkan kesalahan.
Ini adalah perintah Git standar yang bekerja sama persis di Linux, macOS, dan Windows. Salin yang kamu butuhkan, atau coba langsung di playground terminal: shell sungguhan di browsermu, tanpa perlu instalasi.
FAQ cheat sheet Git
Apakah cheat sheet Git ini gratis?
Ya. Cheat sheet Git ini sepenuhnya gratis, tanpa perlu daftar. Simpan di bookmark dan kembali kapan pun kamu perlu mencari perintah untuk branching, commit, atau membatalkan perubahan.
Apa perbedaan merge dan rebase?
git merge menggabungkan dua branch dengan membuat merge commit baru yang menyatukan riwayat keduanya, sehingga riwayat asli keduanya tetap utuh. git rebase justru memutar ulang commitmu satu per satu di atas branch lain, sehingga riwayatnya lurus tanpa merge commit. Merge aman dan tidak merusak; rebase menghasilkan riwayat yang lebih rapi tetapi menulis ulang commit, jadi hindari rebase pada branch yang sudah diambil orang lain lewat pull.Bagaimana cara membatalkan commit di Git?
git reset --soft HEAD~1 membatalkan commit terakhir tetapi perubahannya tetap di staging, sedangkan git reset --hard HEAD~1 membuang perubahannya sepenuhnya. Untuk commit yang sudah dibagikan, pakai git revert <hash> untuk membuat commit baru yang membaliknya tanpa menulis ulang riwayat.Bisakah saya berlatih perintah Git secara online?
Bisa. Buka playground terminal untuk menjalankan perintah Git di shell sungguhan di browsermu, tanpa perlu instalasi. Kalau kamu ingin belajar terarah, kursus Git interaktif gratis dari Coddy membawamu dari commit pertamamu sampai branching, merge, dan remote, langkah demi langkah.
Apakah cheat sheet ini cocok untuk pemula?
Cocok. Isinya disusun mulai dari setup dan commit (dasar sehari-hari) sampai rebase dan membatalkan perubahan, jadi kamu bisa memakai bagian atas sejak hari pertama dan pelan-pelan menguasai alur kerja lanjutan.