终端下如何配置 git 使其可以同时 push 到两个远程仓库?
迷茫
迷茫 2017-04-27 09:03:02
0
3
673
[remote "origin"]
        url = git@github.com:SegmentFault/XXX.git
        fetch = +refs/heads/*:refs/remotes/origin/*
[remote "dev"]
        url = git@gitlab.com:root/XXX.git
        fetch = +refs/heads/*:refs/remotes/dev/*

config 中配置了两个远程仓库。我想终端下一句 git push 同时把代码提交到两个仓库,该怎么做?

迷茫
迷茫

业精于勤,荒于嬉;行成于思,毁于随。

répondre à tous(3)
巴扎黑

J'ai utilisé deux méthodes. La première consistait à définir plusieurs télécommandes, puis à écrire un alias, tel que :

$ git config alias.pushall "!git push origin && git push dev"

Plus tard, après la mise à niveau d'une certaine version (oubli du numéro de version spécifique), Git a ajouté un paramètre supplémentaire qui vous permet de définir plusieurs pushurls pour une télécommande. Par exemple, dans l'exemple de votre question, je peux laisser de côté remote "dev", ne laisser que remote "origin", puis ajouter :

git remote --set-url --add --push origin git@gitlab.com:root/XXX.git

Après cela, votre remote "origin" ressemblera à ceci :

[remote "origin"]
        url = git@github.com:SegmentFault/XXX.git
        fetch = +refs/heads/*:refs/remotes/origin/*
        pushurl = git@github.com:SegmentFault/XXX.git
        pushurl = git@gitlab.com:root/XXX.git

De cette façon, je peux directement git push origin pousser deux dépôts.

Ces deux méthodes ont en fait leurs propres scénarios applicables, vous pouvez donc en choisir un vous-même.

世界只因有你

Comme il y a un risque d'être bloqué par un mur, c'est embêtant que les deux entrepôts soient désynchronisés. Ce n'est pas trop compliqué..
Si vous voulez vraiment faire cela, écrivez simplement un fichier shell.

#!/bin/bash
git push origin master
git push dev master
#以上,根据你自己的要求调整一下.

Et n'oubliez pas de le rendre exécutable : (en supposant que le script s'appelle push.sh)

JerryMac:Dev Jerry$ chmod +x ./push.sh
JerryMac:Dev Jerry$ ./push.sh
大家讲道理

Réponse : http://blog.codepiano.com/2013/07/03/push-multi-remote-repositories/

Les mêmes questions dans SegmentFault :
/q/1010000000367632/a-1020000000369754
/q/1010000000411859/a-1020000000411882

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal