Aşağıdakileri daha kolay bir şekilde yapabilir miyim?
git checkout origin/master
git branch -D master
git branch master
git checkout master
Aşağıdakileri daha kolay bir şekilde yapabilir miyim?
git checkout origin/master
git branch -D master
git branch master
git checkout master
Yanıtlar:
As KindDragon 'ın cevabı bahseder, sen yeniden oluşturabilirsiniz masterdoğrudan origin/masterşununla:
git checkout -B master origin/master
git checkoutAdam sayfası bahseder:
Eğer -Bverilirse, <new_branch>yoksa oluşturulur; Aksi takdirde sıfırlanır . Bu işlemin karşılığıdır.
$ git branch -f <branch> [<start point>]
$ git checkout <branch>
Başlangıçta önerildi:
Gibi bir şey:
$ git checkout master
# remember where the master was referencing to
$ git branch previous_master
# Reset master back to origin/master
$ git reset --hard origin/master
2. adım isteğe bağlı olarak.
Git bu komutu destekliyor:
git checkout -B master origin/master
Şubeye göz atın ve origin/masterşubeyi sıfırlayın master.
git fetch origin masteremin olmak için daha önce gerek yok origin/mastermu?
git fetchilk önce yapmanız gereken tüm çözümler
VonC'nin cevabının bile bu seçeneğe göre karmaşıklığı olduğunu düşünüyorum:
git update-ref refs/heads/master origin/master
git reset --hard master
git, bir ref'nin her değerini otomatik olarak günlüğe kaydeder (reflog üzerinden). Bu komutu çalıştırdıktan sonra master@{1}, master'ın önceki değerini ifade eder.
VonC'nin cevabı doğrudur, ancak ustanın eski değerini dosya sistemine dahil etmek için zaman harcar.
Depodaki artık nesneleri önemsiyorsanız, koşabilirsiniz git gc
Already on 'master'
Zaten üzerindeyseniz masteraşağıdakileri yapabilirsiniz:
git reset --hard origin/master
Yerel masterşubeyi uzaktan kumandaya yönlendirir origin/masterve çalışma dizinindeki değişiklikleri atar.
git checkout -B master origin/master?