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 master
doğrudan origin/master
şununla:
git checkout -B master origin/master
git checkout
Adam sayfası bahseder:
Eğer -B
verilirse, <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 master
emin olmak için daha önce gerek yok origin/master
mu?
git fetch
ilk ö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 master
aşağıdakileri yapabilirsiniz:
git reset --hard origin/master
Yerel master
şubeyi uzaktan kumandaya yönlendirir origin/master
ve çalışma dizinindeki değişiklikleri atar.
git checkout -B master origin/master
?