Dalda koştuğunuzda git pull
, master
tipik olarak çeker origin/master
. Aradım farklı dalda değilim newbranch
, ama yapan bir komutu çalıştırmak için gereken git pull
dan origin/master
içine master
ama koşamam git checkout
çekme işlemi tamamlandıktan sonra kadar seçilen dalı değiştirmek için. Bunu yapmanın bir yolu var mı?
Biraz arka plan vermek için, arşiv bir web sitesini depolar. newbranch
Web sitesini olarak değiştirerek bazı değişiklikler yaptım ve bunları dağıttım newbranch
. Şimdi bu değişiklikler master
şubeye aktarıldı , web sitesini master
şubeye geri döndürmeye çalışıyorum . Bu noktada newbranch
ve origin/master
aynı, ancak master
geride kalıyor origin/master
ve güncellenmesi gerekiyor. Sorun şu ki, bunu geleneksel şekilde yaparsam:
$ git checkout master
# Uh oh, production website has now reverted back to old version in master
$ git pull
# Website is now up to date again
Yukarıdaki ( git checkout master && git pull
) ile aynı şeyi başarmam gerekiyor , ancak işlem sırasında çalışma dizinini daha önceki bir revizyonla değiştirmeden.
git fetch; git merge origin/master
içinden yaparak yapabilirdi newbranch
. Deponun ikinci bir kopyasının tamamını klonlamanın hiçbir faydası yoktur.
newbranch
ve orada saklanacak bir şey yok!