Il n'est plus nécessaire de le faire manuellement avec des versions modernes de git
! Voir Malvoisin La solution de l'entreprise, en dessous de .
Reproduit ici :
git remote set-url origin --push --add <a remote>
git remote set-url origin --push --add <another remote>
Réponse originale :
C'est quelque chose que j'utilise depuis un certain temps sans mauvaises conséquences et qui a été suggéré par Linus Torvalds sur le site de la liste de diffusion git .
araqnid La solution de l'auteur est la bonne pour apporter le code en votre dépôt mais lorsque, comme moi, vous avez plusieurs amonts équivalents faisant autorité (je garde certains de mes projets les plus critiques clonés à la fois sur un amont privé, GitHub et Codaset), il peut être pénible de pousser les changements vers chacun d'eux, chaque jour.
Pour faire court, git remote add
toutes vos télécommandes individuellement et ensuite git config -e
et ajoutez un mergedremote. En supposant que vous avez ce dépôt config
:
[remote "GitHub"]
url = git@github.com:elliottcable/Paws.o.git
fetch = +refs/heads/*:refs/remotes/GitHub/*
[branch "Master"]
remote = GitHub
merge = refs/heads/Master
[remote "Codaset"]
url = git@codaset.com:elliottcable/paws-o.git
fetch = +refs/heads/*:refs/remotes/Codaset/*
[remote "Paws"]
url = git@github.com:Paws/Paws.o.git
fetch = +refs/heads/*:refs/remotes/Paws/*
pour créer une télécommande fusionnée pour "Paws"
y "Codaset"
je peux ajouter ce qui suit après tous ces éléments :
[remote "Origin"]
url = git@github.com:Paws/Paws.o.git
url = git@codaset.com:elliottcable/paws-o.git
Une fois que j'ai fait ça, quand je git push Origin Master
il poussera à la fois Paws/Master
y Codaset/Master
séquentiellement, ce qui rend la vie un peu plus facile.
50 votes
Note pour les nouveaux visiteurs, à partir de 2016 : La façon actuellement correcte de procéder, sanctionnée par les classes supérieures
git
est inclus dans malvine 's réponse ci-dessous . La réponse acceptée est incorrecte.0 votes
J'ai trouvé la réponse fourni ici être très bien détaillée et résumée