Pour tout script que je vous suggère d'exécuter, il serait sage de cacher ou de valider toutes vos modifications.
J'avais besoin de pousser plusieurs branches d'une télécommande à une autre. Ces réponses exigeaient que les antennes locales existaient auparavant
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
Changez simplement origin1 sur la télécommande source et origin2 sur la télécommande de destination. Copiez ceci dans "remoteBranchCloner.sh" et appelez-le en utilisant "sh callBranchCloner.sh".
Il y a peut-être un meilleur moyen, qui ne fait pas plusieurs poussées.
Si vous utilisez mon code, vous souhaitez probablement utiliser la mise en cache des informations d'identification, sinon vous devez taper vos informations d'identification plusieurs fois.
Pour Windows :
Remarque: ce script est pour Linux . Si vous l' exécutez dans "git bash", le script fonctionnera, mais vous ne pouvez pas l'exécuter depuis la console native sans avoir installé quelque chose de spécial.
git config [--global] credential.helper wincred
Pour Linux
git config [--global] credential.helper cache
Où [--global] signifie éventuellement ajouter --global
Si vous souhaitez configurer le suivi à distance de toutes les succursales sur une nouvelle télécommande:
DEST_R=remotename
for cbranch in `git branch`
do
git checkout $cbranch
git branch -u guru/$cbranch
done
Stocké en tant que fichier .sh et exécuté avec "sh filename.sh", tous les amonts seront configurés pour suivre le 'remotename' distant