Çalıştırmanızı önerdiğim herhangi bir komut dosyası için, tüm değişikliklerinizi saklamak veya uygulamak akıllıca olacaktır.
Birkaç dalı bir uzaktan kumandadan diğerine itmem gerekiyordu. Bu cevaplar, yerel şubelerin daha önce var olmasını gerektirdi
SRC_R=origin1
DEST_R=origin2
for cbranch in $(git branch -r | grep $SRC_R | cut -d '/' -f2,3,4,5 | cut -d ' ' -f1)
do
git checkout $cbranch
git push $DEST_R $cbranch
done
Sadece origin1'i uzak kaynak ve origin2'yi hedef uzak olarak değiştirin. Bunu "remoteBranchCloner.sh" içine kopyalayın ve "sh callBranchCloner.sh" kullanarak çağırın.
Birkaç itme yapmayan daha iyi bir yol olabilir .
Kodumu kullanırsanız, muhtemelen kimlik bilgilerini önbelleğe almayı kullanmak istersiniz , aksi takdirde kimlik bilgilerinizi birkaç kez yazmanız gerekir.
Windows için :
Not: Bu script linux içindir . Eğer "git bash" içinde çalıştırırsanız , betik çalışacaktır, ancak özel bir şey yüklemeden onu yerel konsoldan çalıştıramazsınız.
git config [--global] credential.helper wincred
Linux için
git config [--global] credential.helper cache
Burada [--global] isteğe bağlı olarak --global ekle anlamına gelir
Tüm şubeler için uzaktan izlemeyi yeni bir uzaktan kumandaya ayarlamak isterseniz:
DEST_R=remotename
for cbranch in `git branch`
do
git checkout $cbranch
git branch -u guru/$cbranch
done
Bir .sh dosyası olarak saklanan ve "sh dosyaadı.sh" ile çalıştırılan tüm yukarı akışları uzak "uzak" adı "izleyecek şekilde ayarlar