Git'te bazı uzaktan izleme şubeleri kurdum, ancak onları 'git fetch' ile güncelledikten sonra bunları yerel şubede birleştiremeyecek gibi görünüyorum.
Örneğin, 'diğer-dal' adında bir uzak şubem olduğunu varsayalım. Bunu yerel olarak bir izleme dalı olarak kurdum
git branch --track an-other-branch origin/an-other-branch
Çok uzak çok iyi. Ancak bu dal güncellenirse (genellikle ben makineyi hareket ettirip o makineden devreye alarak) ve onu orijinal makinede güncellemek istersem, getir / birleştir ile sorun yaşıyorum:
git fetch origin an-other-branch
git merge origin/an-other-branch
Bunu ne zaman yapsam, 'Zaten güncel' mesajı alıyorum ve hiçbir şey birleşmiyor.
Ancak, bir
git pull origin an-other-branch
her zaman beklediğiniz gibi günceller.
Ayrıca git diff çalıştırılıyor
git diff origin/an-other-branch
farklılıklar olduğunu gösteriyor, bu yüzden söz dizimimin yanlış olduğunu düşünüyorum.
Neyi yanlış yapıyorum?
DÜZENLEME [2010-04-09]: Birkaç kez kontrol ettim ve kesinlikle farklı bir şubede değilim. Benim 'git getirme' ve ardından bir 'git birleştirme' (yukarıda gösterildiği gibi) git çekme ile aynı şeyi mi yapmalı? Git durumunun vb. Sonuçlarını gösteren bazı iş akışları alacağım.
git fetch origin an-other-branch
getirilen ipucunu depolarFETCH_HEAD
, ancak saklamazorigin/an-other-branch
(yani, normal 'uzaktan izleme dalı'). Yani, biri yapılabilirgit fetch origin an-other-branch && git merge FETCH_HEAD
, ancak bunu @Gareth'in söylediği gibi yapmak daha iyidir (ya da sadece git pull kullanın ).