2011-03-31 13 views
11

¿Podría explicarme, realmente necesito instalar el servidor git en la máquina remota si solo necesito ubicar el repositorio allí y acceder a él a través de ssh?¿Es necesario instalar el servidor Git si quiero tener acceso remoto al repositorio a través de ssh?

Mi ignorancia probablemente comienza por malinterpretar algún principio clave de operación de git, así que me alegraría que alguien me lo explique.

Pensé que el servidor remoto para git es simplemente un lugar donde almacena archivos muy parecido a la carpeta local de mi PC y puedo tener servidor remoto con acceso ssh para alojar mi repositorio sin necesidad de instalar binarios del servidor git ahí.

¿Es esto posible? Si no, ¿podría explicarme lo que extraño?

Respuesta

5

Todo el los archivos requeridos por git para ejecutarse se almacenan localmente en un proceso de pago (en el directorio .git). Usted podría simplemente acceda a su repositorio git a través de SSH y trátelo como un repositorio en su máquina local, por ejemplo, montando la carpeta remota localmente.

Sin embargo, no estoy seguro de por qué querría hacer eso. No puedes hacer nada útil sin los binarios git instalados. Si solo quería usar el repositorio para versiones privadas, entonces también podría instalarlo y ejecutarlo localmente, y hacer una copia de seguridad con sus métodos de respaldo habituales. Si desea utilizar el repositorio para colaborar con otros, necesita los archivos binarios git disponibles en un servidor al que todos sus colaboradores pueden acceder.

No hay una distinción significativa entre un "servidor" de git y un "cliente" de git. Es un sistema de control de versiones distribuido, lo que significa que cada proceso de pago es un repositorio de versiones totalmente funcional por derecho propio.

+1

+1 para señalar que (en la mayoría de los casos) necesita ** git ** instalado en la máquina remota, incluso si no necesita ningún software de servidor especial –

+0

Voy a utilizar el servidor remoto solo para sincronizo mi trabajo en mis tres PC por conveniencia. Ninguno, excepto yo, lo estará usando.Entonces, creo que puedo hacer repositorio remoto a través de SSH, ¿verdad? –

+0

¿Realmente necesita instalar git en la máquina remota para presionar a través de ssh? –

4

Sure es posible tener acceso ssh sin un "servidor git".
Sin embargo, necesita un servidor ssh (daemon).

No mezclar un "servidor remoto" y un "repo a distancia (o aguas arriba en realidad): un acuerdo de recompra a distancia puede ser un simple directorio justo al lado de tu repositorio actual (protocolo local)

Gitolite. es un buen ejemplo, utilizando el mecanismo de mando forzado de SSH para administrar autorización (no acceso).
Ver Gitolite without SSH darse cuenta de que sólo un sshd es suficiente para acceder git repo.

Ver también Pro Git book para los distintos protocolos apoyado por Git.

3

Si funciona sobre SSH no necesita un servidor de git. El truco es conseguir que los permisos de los archivos sean correctos para que todos puedan editar los archivos.

Si usted está haciendo esto sólo para ti, en el servidor:

git init --bare 

Si lo estás haciendo con otros desarrolladores entonces usted tendrá que:

mkdir repo 
chgrp GROUP repo 
chmod g+rwxs repo 
cd repo 
git init --bare --shared=group 
Cuestiones relacionadas