За всеки скрипт, който предлагам да изпълните, би било разумно да скриете или да извършите всичките си промени.
Трябваше да натисна няколко клона от едно дистанционно на друго. Тези отговори изискват местните клонове да са съществували преди това
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
Просто променете origin1 на дистанционното изходно устройство и origin2 на дистанционното местоназначение. Копирайте това в „remoteBranchCloner.sh“ и го извикайте с „sh callBranchCloner.sh“.
Може да има по-добър начин, който не прави няколко натискания.
Ако използвате моя код, вероятно искате да използвате кеширане на идентификационни данни, в противен случай трябва да въведете вашите идентификационни данни няколко пъти.
За Windows:
Забележка: Този скрипт е за linux. Ако го изпълните в "git bash", скриптът ще работи, но не можете да го стартирате от основната конзола, без да сте инсталирали нещо специално.
git config [--global] credential.helper wincred
За Linux
git config [--global] credential.helper cache
Където [--global] означава незадължително добавяне --global
Ако искате да зададете дистанционно проследяване за всички клонове на ново дистанционно:
DEST_R=remotename
for cbranch in `git branch`
do
git checkout $cbranch
git branch -u guru/$cbranch
done
Съхранява се като .sh файл и се изпълнява с "sh filename.sh" ще настрои всички възходящи потоци да проследяват отдалечено "remotename"
person
csga5000
schedule
22.07.2015