2012-07-08 20 views
7

Si el archivo remoto (utilizando ssh) no contiene el repositorio git, aún es posible copiar el repositorio local a remoto y configurar el seguimiento remoto sin copiar manualmente los archivos usando scp y haciendo luego seguido de un clon git?Cómo activar el comando remoto si el remoto no existe

Respuesta

9

do necesita configurar el repositorio en el control remoto, pero no debe copiar los archivos manualmente. Por lo menos, no obtienes la historia con eso.

En primer lugar, ssh para el mando a distancia y hacer esto:

mkdir your_repo.git 
cd your_repo.git 
git init --bare 

El .git en nombre del directorio es completamente opcional. La opción --bare hace que el repositorio no tenga índice y, por lo tanto, se puede pulsar.

A continuación, ir de nuevo a su repositorio local y agregar el control remoto:

git remote add remote_name [email protected]:path/to/your_repo.git 

que está todo listo. Todo lo que necesita hacer ahora es:

git push remote_name 
+0

Gracias, ¿qué pasa si quiero que mi control remoto no sea un repositorio simple, también posible? Gracias – Ryan

+1

En general, esa no es una buena idea. No estoy seguro de si es posible, pero aún así, presionar a repositorios no estrictos significa que en ese repositorio, todas sus cosas deben fusionarse sin causar conflicto, pero no hay garantía de eso. Ver también [aquí] (http://stackoverflow.com/questions/1764380/push-to-non-bare-repository), [aquí] (http://gitready.com/advanced/2009/02/01/push -to-only-bare-repositories.html) y [aquí] (http://sitaramc.github.com/concepts/bare.html) – Shahbaz

1

Ii que tiene un acceso ssh, puede copiar el repositorio (sí, con un SCP), pero la copia única un archivo: a git bundle.

Desde allí puede clonar ese paquete como un repositorio simple (ese archivo actúa como un repositorio que puede clonar) en su servidor remoto y usarlo como un repositorio remoto (puede enviarlo a un repositorio remoto remoto).

Cuestiones relacionadas