Tüm şubeleri eskisinden yeni bir repoya taşıyorsanız, yerel repoda, yeni repoya gitmeden önce her bir şubenin mevcut orijin dallarına takibini ayarlamanız gerekir, aksi takdirde tüm orijin şubeleriniz görünmez yeni köken. Bunu her dalı izleyerek veya kontrol ederek manuel olarak yapın veya bir astarı kullanın:
for remote in `git branch -r | grep -v '\->' | grep -v master`; do git branch --track `echo $remote|sed 's=origin/=='` `echo $remote`; done
Bu tek satırlık komut, bu sayfadaki diğer cevaplardaki sürümlerine dayanır, ancak muhtemelen daha iyidir çünkü:
- bu sayfadaki bu komutun --track için yalnızca bir parametre sağlayan bazı eski varyantlarının aksine, şube izlemeyi doğru şekilde kurar ve böylece her şube izleme yöneticisini bitirir - iyi değil
- yerel şubeleri şahsen istemediğim “orijin /” öneki olmadan adlandırır - ve bir şubeye normal olarak ödeme yaptığınızda olanlarla tutarlıdır.
- zaten gerçekleştiği için izleme yöneticisini atlıyor
- aslında hiçbir şey ödeme yapmaz bu nedenle hızlı
- git şubesinin çıkışında -> tökezlemesini önler
Daha sonra, orijinleri değiştiriyorsanız, eski orijine olan bağlantıyı değiştirin ve yeni bir uzaktan kumandaya yönlendirin. Önce yeni uzaktan kumandayı, bitbucket / github GUI kullanarak oluşturduğunuzdan emin olun, ancak herhangi bir dosya eklemeyin, aksi takdirde birleştirme sorunu olacaktır. Örneğin
git remote set-url origin git@bitbucket.org:YOUR/SOMEREPO.git
Şimdi itin. Etiketleri de itmek için ikinci komutun gerekli olduğunu unutmayın:
git push -u --all origin
git push --tags origin