Git Pull
Son güncelleme
git pull mevcut dalınızı uzağındaki en son commit'lerle günceller. Arka planda değişiklikleri indirmek için git fetch, ardından onları entegre etmek için git merge çalıştırır; yani git pull = git fetch + git merge. Bir birleştirme commit'i oluşturmak yerine yerel commit'lerinizi üste yeniden uygulamak için --rebase ekleyin.
Bunları terminal playground'da deneyin: tarayıcınızda gerçek bir kabuk, kurulacak hiçbir şey yok.
Sözdizimi
| Command | What it does |
|---|---|
git pull | Mevcut dalın uzağını getirir ve birleştirir |
git pull origin main | Bir uzaktan belirli bir dalı çeker |
git pull --rebase | Getirir, sonra commit'lerinizi üste rebase eder |
git pull --ff-only | Yalnızca fast-forward yapabiliyorsa çeker (birleştirme yok) |
git pull --no-rebase | Rebase varsayılan olsa bile birleştirmeyi zorlar |
Yaygın durumlar
| Goal | Command |
|---|---|
| Dalınızdaki en yeniyi almak | git pull |
| Geçmişi doğrusal tutmak | git pull --rebase |
| Çakışmaya uğrayan bir pull'u iptal etmek | git merge --abort |
| Yerel commit'leri atıp uzağa eşitlemek | git fetch sonra git reset --hard origin/main |
git pull SSS
git pull gerçekte ne yapar?
Mevcut dalınız için uzaktaki en son commit'leri indirir ve bunları yerel dalınıza entegre eder. İki komutun kısaltmasıdır:
git fetch (indir) ve ardından git merge (entegre et). Yapılandırırsanız, birleştirme adımı bir rebase'e dönüşür.git pull ile git fetch arasındaki fark nedir?
git fetch yalnızca uzaktaki değişiklikleri indirir ve uzak izleme dallarınızı günceller; çalışma dalınıza dokunmaz. git pull bu fetch işlemini yapar ve ardından değişiklikleri mevcut dalınızla birleştirir. Gelen değişiklikleri önce incelemek için fetch, tek adımda alıp entegre etmek için pull kullanın.git pull --rebase nedir ve ne zaman kullanmalıyım?
git pull --rebase uzaktaki commit'leri getirir ve ardından bir birleştirme commit'i oluşturmak yerine yerel commit'lerinizi bunların üstüne yeniden uygular. Birçok ekibin tercih ettiği şekilde geçmişi doğrusal tutar. Henüz gönderilmemiş yerel commit'leriniz olduğunda ve her pull yaptığınızda bir birleştirme commit'inden kaçınmak istediğinizde kullanın.git pull sonrası çakışmaları nasıl düzeltirim?
Yerel ve uzaktaki değişiklikler çakıştığında bir pull birleştirme çakışmalarına yol açabilir. Çakışan dosyaları açın, işaretli bölümleri çözün, ardından bunlara
git add yapıp git commit (birleştirme için) veya git rebase --continue (rebase'li pull için) çalıştırın. Geri almayı tercih ederseniz git merge --abort veya git rebase --abort çalıştırın.Bunu çevrimiçi deneyebilir miyim?
Evet.
git pull'u tarayıcınızda gerçek bir kabukta çalıştırmak için terminal playground'u açın, kurulacak hiçbir şey yok. Coddy'nin ücretsiz etkileşimli Git kursu da uzaklarla çalışmayı adım adım ele alır.