Skip to content

Perintah Git dijelaskan

Perintah Git yang benar-benar Anda pakai, dikelompokkan menurut tugas: menyiapkan repo, membuat snapshot pekerjaan, bercabang dan menggabungkan, membaca riwayat, berbagi dengan remote, membatalkan kesalahan, menyimpan pekerjaan sementara, serta mengelola berkas dan submodule. Tiap baris memasangkan perintah dengan contoh pemakaian yang realistis.

Git punya ratusan perintah, tetapi pekerjaan harian hanya butuh sedikit. Model mentalnya: pohon kerja adalah berkas Anda, indeks (area staging) adalah commit berikutnya, dan HEAD adalah commit saat ini. Anda stage, Anda commit, Anda bagikan. Baca status sesering mungkin. Semua di bawah ini menganggap suatu perintah sudah ada jika ia tercantum.

Tabel referensi · 55 entri
55 of 55 rows
Penyiapan & konfigurasi
Atur nama, email, atau editor Anda sekali untuk semua repo.git config --global user.name "Ada"
Buat nama pintasan untuk perintah yang sering Anda ketik.git config --global alias.co checkout
Buat repositori baru di folder saat ini.git init
Salin repositori remote ke mesin Anda.git clone git@github.com:org/repo.git
Salin hanya commit terbaru dari satu cabang.git clone --depth 1 --single-branch git@github.com:org/repo.git
Dasar snapshot
Tunjukkan apa yang staged, dimodifikasi, dan belum dilacak.git status -sb
Stage perubahan agar masuk ke commit berikutnya.git add src/app.ts
Tinjau perubahan potongan demi potongan dan hanya stage yang Anda terima.git add -p src/app.ts
Stage perubahan semua berkas terlacak tanpa menambah berkas baru.git add -u
Catat perubahan yang staged sebagai commit baru.git commit -m "fix: null check"
Ganti commit terakhir dengan versi yang sudah diperbaiki.git commit --amend -m "fix: handle empty input"
Tampilkan perubahan yang belum staged, atau yang staged dengan --staged.git diff --staged
Tampilkan semua perubahan sejak commit terakhir, staged maupun tidak.git diff HEAD
Bercabang & menggabungkan
Cantumkan, buat, atau hapus cabang.git branch feature-x
Hapus cabang yang sudah digabung (-D memaksakan, -a mencantumkan semua cabang).git branch -d feature-x
Pindah cabang (pengganti modern untuk checkout).git switch feature-x
Buat cabang baru dan langsung pindah ke sana dalam satu langkah.git switch -c feature-x
Pindah cabang atau pulihkan berkas (perintah lama yang lebih luas cakupannya).git checkout feature-x
Bawa perubahan cabang lain ke cabang saat ini.git merge feature-x
Batalkan penggabungan yang berkonflik dan kembalikan cabang ke kondisi semula.git merge --abort
Putar ulang commit cabang saat ini di atas cabang lain.git rebase main
Squash, urutkan ulang, atau sunting commit saat memutarnya ulang.git rebase -i main
Salin satu commit dari cabang lain ke cabang ini.git cherry-pick a1b2c3d
Tandai commit dengan label terbaca seperti versi.git tag -a v1.2.0
Checkout cabang lain di folder terpisah secara bersamaan.git worktree add ../repo-feature feature-x
Inspeksi riwayat
Telusuri riwayat commit.git log --oneline --graph --decorate
Telusuri riwayat dari semua cabang, bukan hanya cabang saat ini.git log --oneline --graph --all
Tampilkan diff lengkap dan pesan satu commit.git show HEAD
Tampilkan siapa yang terakhir mengubah tiap baris sebuah berkas.git blame src/app.ts
Tampilkan semua commit yang pernah ditunjuk HEAD, termasuk yang dibuang.git reflog
Cari riwayat per separuh untuk menemukan commit yang merusak.git bisect start
Ringkas commit menurut penulisnya.git shortlog -sn
Namai commit saat ini dengan menghitung dari tag terdekat.git describe --tags
Kolaborasi remote
Cantumkan atau tambahkan repositori remote.git remote add origin <url>
Cantumkan remote beserta URL fetch dan push-nya.git remote -v
Unduh perubahan remote tanpa mengubah cabang Anda.git fetch origin
Unduh perubahan remote dan buang referensi ke cabang remote yang sudah dihapus.git fetch --prune
Fetch lalu gabungkan perubahan remote pada cabang saat ini.git pull --rebase
Kirim commit lokal ke remote.git push -u origin feature-x
Timpa cabang remote, tetapi hanya bila belum ada yang push lebih dulu.git push --force-with-lease origin feature-x
Membatalkan perubahan
Buang perubahan pohon kerja, atau unstage perubahan itu.git restore src/app.ts
Unstage sebuah berkas dan pertahankan suntingannya di pohon kerja.git restore --staged src/app.ts
Pindahkan ujung cabang saat ini dan, opsional, indeksnya.git reset --hard HEAD~1
Tambahkan commit baru yang membatalkan commit sebelumnya (aman untuk dibagikan).git revert HEAD
Hapus berkas dan folder yang belum dilacak.git clean -fd
Menyimpan sementara (stash)
Simpan pekerjaan yang belum di-commit dan reset pohon kerja.git stash -u
Tampilkan semua stash yang Anda simpan.git stash list
Terapkan kembali satu stash dan tetap menyimpannya di daftar.git stash apply stash@{1}
Hapus stash yang tidak lagi Anda perlukan.git stash drop stash@{1}
Terapkan kembali stash terbaru lalu hapus dari daftar.git stash pop
Berkas & submodule
Pindahkan atau ganti nama berkas dan stage perubahannya.git mv old.ts src/new.ts
Hapus sebuah berkas dan stage penghapusannya.git rm src/old.ts
Lacak repositori lain sebagai folder di dalam repo ini.git submodule add git@github.com:org/lib.git lib
Checkout hanya folder yang Anda namai dari repositori besar.git sparse-checkout set src docs
Ekspor pohon satu commit sebagai berkas tar atau zip.git archive -o repo.zip HEAD