Cheat sheet perintah Git
Git melacak perubahan file Anda sebagai serangkaian commit dalam repositori. Perintah ini mencakup alur kerja harian: membuat repo, menyimpan pekerjaan, bercabang, menggabung, dan berbagi dengan remote. Biarkan lembar ini terbuka saat Anda belajar.
| Perintah | Fungsinya |
|---|---|
| git init | Create a new, empty Git repository in the current directory. |
| git clone | Download a remote repository and its full history to your machine. |
| git status | Show changed, staged and untracked files in the working tree. |
| git add | Stage changes (files) to be included in the next commit. |
| git commit | Record staged changes as a new commit with a message. |
| git log | Display the commit history of the repository. |
| git diff | Show unstaged or staged differences between states. |
| git branch | List, create or delete branches in the repository. |
| git checkout / switch | Switch branches or restore files (switch is the modern command). |
| git merge | Join another branch's history into the current branch. |
| git rebase | Reapply commits on top of another base commit, rewriting history. |
| git pull | Fetch from a remote and merge the changes into the current branch. |
| git push | Upload local commits to a remote repository. |
| git stash | Temporarily shelve uncommitted changes to reapply later. |
| git remote | Manage the set of remote repositories you track. |
Catatan
- Sebagian besar perintah menerima flag (seperti -m untuk pesan atau -a untuk semua); jalankan 'git help <perintah>' untuk daftar lengkap.
- Nama branch murah dan bisa dibuang — commit sering di branch fitur, lalu merge ke main.
- Sebelum perintah destruktif seperti rebase atau reset, pastikan pekerjaan Anda sudah di-commit atau di-stash.
Pertanyaan umum
- Apa bedanya merge dan rebase?
- Merge menggabungkan riwayat dengan commit baru yang punya dua induk. Rebase memutar ulang commit Anda di atas branch lain, menghasilkan riwayat linier namun menulis ulang ID commit.
- Bagaimana membatalkan sebuah commit?
- Gunakan 'git revert <commit>' untuk menambahkan commit baru yang membatalkan perubahan (aman, riwayat tetap). 'git reset' menulis ulang riwayat dan tidak boleh dipakai di branch bersama.
- Apa bedanya git pull dan git fetch?
- Fetch mengunduh commit dan referensi dari remote tanpa menyentuh pohon kerja Anda. Pull melakukan fetch lalu menggabungkan atau me-rebase perubahan itu ke branch Anda saat ini.
- Kapan saya harus menggunakan git stash?
- Stash menyingkirkan sementara perubahan yang belum di-commit agar Anda bisa ganti branch atau pull dengan bersih, lalu memulihkannya dengan 'git stash pop'.