Au lieu de faire:
git push origin --all && git push nodester --all && git push duostack --all
Est-il possible de faire cela avec une seule commande?
Merci :)
Au lieu de faire:
git push origin --all && git push nodester --all && git push duostack --all
Est-il possible de faire cela avec une seule commande?
Merci :)
Créez une télécommande all
avec plusieurs URL de dépôt portant son nom:
git remote add all origin-host:path/proj.git
git remote set-url --add all nodester-host:path/proj.git
git remote set-url --add all duostack-host:path/proj.git
Alors seulement git push all --all
.
Voici à quoi cela ressemble dans .git/config
:
[remote "all"]
url = origin-host:path/proj.git
url = nodester-host:path/proj.git
url = duostack-host:path/proj.git
Comme alternative à la CLI pour éditer le fichier .git / config, vous pouvez utiliser les commandes suivantes:
# git remote add all origin-host:path/proj.git
# git remote set-url --add all nodester-host:path/proj.git
# git remote set-url --add all duostack-host:path/proj.git
Les mêmes git push all --all
fonctionnent ici également.
Vous avez accompli la même chose que la réponse n ° 1. Vous venez de le faire avec la ligne de commande au lieu de l'édition brute du fichier de configuration.
J'ai écrit une fonction de bash pour pousser plusieurs télécommandes en un seul appel. Vous pouvez spécifier une seule télécommande en tant que paramètre, plusieurs télécommandes séparées par des espaces ou n'en spécifier aucune pour qu'elle soit transmise à toutes les télécommandes.
Cela peut être ajouté à votre .bashrc ou .bash_profile.
function GitPush {
REMOTES=$@
# If no remotes were passed in, push to all remotes.
if [[ -z "$REMOTES" ]]; then
REM=`git remote`
# Break the remotes into an array
REMOTES=$(echo $REM | tr " " "\n")
fi
# Iterate through the array, pushing to each remote
for R in $REMOTES; do
echo "Pushing to $R..."
git push $R
done
}
Exemple: Supposons que votre référentiel dispose de 3 télécommandes: rem1, rem2 et rem3.
# Pushes to rem1
GitPush rem1
# Pushes to rem1 and rem2
GitPush rem1 rem2
# Pushes to rem1, rem2 and rem3
GitPush
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.