Ketika Anda berjalan git pull
di master
cabang, itu biasanya menarik dari origin/master
. Saya berada di cabang berbeda yang dipanggil newbranch
, tetapi saya perlu menjalankan perintah yang melakukan git pull
dari origin/master
ke master
tetapi saya tidak dapat menjalankan git checkout
untuk mengubah cabang yang dipilih sampai setelah penarikan selesai. Apakah ada cara untuk melakukan ini?
Sebagai latar belakang, repositori menyimpan sebuah situs web. Saya telah membuat beberapa perubahan newbranch
dan menerapkannya dengan mengalihkan situs web ke newbranch
. Sekarang perubahan tersebut telah digabungkan ke dalam master
cabang, saya mencoba untuk mengalihkan situs web kembali ke master
cabang juga. Pada titik ini, newbranch
dan origin/master
identik, tetapi master
tertinggal origin/master
dan perlu diperbarui. Masalahnya, jika saya melakukannya dengan cara tradisional:
$ 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
Saya perlu mencapai hal yang sama seperti di atas ( git checkout master && git pull
), tetapi tanpa mengubah direktori kerja ke revisi sebelumnya selama proses tersebut.
git fetch; git merge origin/master
dari dalam newbranch
. Tidak ada manfaatnya menggandakan seluruh salinan kedua dari repositori.
newbranch
dan tidak ada apa-apa di sana untuk disimpan!