Git Pull
Terakhir diperbarui
git pull memperbarui branch saat ini dengan commit terbaru dari remote-nya. Di balik layar, perintah ini menjalankan git fetch untuk mengunduh perubahan, lalu git merge untuk menggabungkannya, jadi git pull = git fetch + git merge. Tambahkan --rebase untuk menjalankan ulang commit lokalmu di atasnya, alih-alih membuat merge commit.
Coba perintah-perintah ini di playground terminal: shell sungguhan di browsermu, tanpa perlu instalasi.
Sintaks
| Perintah | Fungsinya |
|---|---|
git pull | Fetch dan merge dari remote branch saat ini |
git pull origin main | Pull branch tertentu dari remote |
git pull --rebase | Fetch, lalu rebase commit-mu di atasnya |
git pull --ff-only | Pull hanya kalau bisa fast-forward (tanpa merge) |
git pull --no-rebase | Memaksa merge meskipun rebase adalah default |
Kasus umum
| Tujuan | Perintah |
|---|---|
| Ambil versi terbaru di branch-mu | git pull |
| Jaga riwayat tetap lurus | git pull --rebase |
| Batalkan pull yang menemui konflik | git merge --abort |
| Buang commit lokal dan samakan dengan remote | git fetch lalu git reset --hard origin/main |
Pertanyaan seputar git pull
Apa sebenarnya yang dilakukan git pull?
git fetch (unduh) yang diikuti git merge (gabungkan). Kalau kamu mengaturnya, langkah merge bisa diganti dengan rebase.Apa bedanya git pull dan git fetch?
git fetch hanya mengunduh perubahan dari remote dan memperbarui branch remote-tracking-mu, tanpa menyentuh branch kerjamu. git pull melakukan fetch itu lalu menggabungkan perubahannya ke branch saat ini. Pakai fetch untuk meninjau perubahan yang masuk lebih dulu; pakai pull untuk mengambil dan menggabungkannya dalam satu langkah. Lihat penjelasan lengkap git fetch vs pull untuk tahu kapan memakai masing-masing.Apa itu git pull --rebase dan kapan sebaiknya dipakai?
git pull --rebase mengambil commit dari remote lalu menjalankan ulang commit lokalmu di atasnya, alih-alih membuat merge commit. Riwayat jadi tetap lurus, yang disukai banyak tim. Pakai opsi ini kalau kamu punya commit lokal yang belum di-push dan ingin menghindari merge commit setiap kali pull.Bagaimana cara memperbaiki konflik setelah git pull?
git add dan git commit (untuk merge) atau git rebase --continue (untuk pull dengan rebase). Kalau kamu lebih memilih mundur, jalankan git merge --abort atau git rebase --abort.Bisakah saya berlatih ini secara online?
git pull di shell sungguhan di browsermu, tanpa perlu instalasi. Kursus Git interaktif gratis dari Coddy juga membahas cara bekerja dengan remote langkah demi langkah.