¿Puede un proyecto tener dos (o más) "orígenes" en Git?
Me gustaría impulsar un solo proyecto tanto a github como a un servidor Heroku .
Específicamente, este error aparece al agregar el repositorio de github:
$ git remote add origin https://github.com/Company_Name/repository_name.git
fatal: remote origin already exists.
git
github
repository
Chris Dutrow
fuente
fuente
git remote rename <old> <new>
: linux.die.net/man/1/git-remote . Pero también puede nombrar el repositorio de Github de manera diferente ...Respuestas:
Puede tener tantos controles remotos como desee, pero solo puede tener un control remoto llamado "origen". El control remoto llamado "origen" no es especial de ninguna manera, excepto que es el control remoto predeterminado creado por Git cuando clona un repositorio existente. Puede configurar un segundo control remoto, presionar / extraer desde ese control remoto y configurar algunas ramas para rastrear ramas desde ese control remoto en lugar de su origen.
Intente agregar un control remoto llamado "github" en su lugar:
fuente
origin
y una llamada remotaheroku
.Como nota al margen para cualquiera que se encuentre con esta pregunta más adelante, es posible hacer que el origen empuje a más de un servidor de repositorio git a la vez.
Puede lograr esto utilizando el siguiente comando para agregar otra URL al control remoto de origen.
fuente
./git/config
archivo y eliminar el archivo de URL en la sección ["origen" remoto]git remote set-url --delete origin ssh://[email protected]/user/myproject.git
Aquí hay un proyecto de muestra con múltiples controles remotos, GitHub y GitLab:
Agregar repositorio remoto para GitHub
Agregar repositorio remoto para GitLab
Ahora tiene múltiples controles remotos en el proyecto. Verificación doble con
git remote -v
¿Cómo empujas a múltiples repositorios?
fuente
$ git push
empujará a todos los controles remotos?puede agregar otra cuenta remota a su repositorio dando un nombre diferente en lugar del origen. Puede usar nombres como origin2. para que su comando git pueda modificarse como
fuente
y para uso push:
fuente
Ahora tienes 2 orígenes.
fuente
--push
opción.