¡Hacer esto manualmente ya no es necesario , con versiones modernas de git
! Ver la solución de Malvineous , a continuación.
Reproducido aquí:
git remote set-url origin --push --add <a remote>
git remote set-url origin --push --add <another remote>
Respuesta original:
Este algo que he estado usando durante bastante tiempo sin malas consecuencias y sugerido por Linus Torvalds en la lista de correo de git .
La solución de araqnid es la adecuada para llevar el código a su repositorio ... pero cuando, como yo, tiene múltiples fuentes ascendentes autoritativas equivalentes (mantengo algunos de mis proyectos más críticos clonados tanto en una cadena ascendente privada, GitHub y Codaset), Puede ser un dolor empujar cambios a cada uno, todos los días.
En pocas palabras, git remote add
todos sus controles remotos individualmente ... y luego git config -e
y agregue un control remoto combinado. Suponiendo que tenga este repositorio 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/*
... para crear un control remoto combinado para "Paws"
y "Codaset"
, puedo agregar lo siguiente después de todo eso:
[remote "Origin"]
url = git@github.com:Paws/Paws.o.git
url = git@codaset.com:elliottcable/paws-o.git
Una vez que haya hecho esto, cuando git push Origin Master
lo haga, presionará a ambos Paws/Master
y Codaset/Master
secuencialmente, haciendo la vida un poco más fácil.
git
, se incluye en la respuesta de malvineous a continuación . La respuesta aceptada es incorrecta.