Git clone / pull a través de la red local [cerrado]

17

Estoy tratando de clonar / extraer un repositorio en otra PC usando Ubuntu Quantal. He hecho esto en Windows antes, pero no sé cuál es el problema en ubuntu. Probé estos:

git clone file:////pc-name/repo/repository.git
git clone file:////192.168.100.18/repo/repository.git
git clone file:////user:pass@pc-name/repo/repository.git
git clone smb://c-pc/repo/repository.git
git clone //192.168.100.18/repo/repository.git

Siempre tengo:

Cloning into 'intranet'...
fatal: '//c-pc/repo/repository.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

o

fatal: repository '//192.168.100.18/repo/repository.git' does not exist

Más:

  • La otra PC tiene nombre de usuario y contraseña
  • No es un problema de red, puedo acceder y hacer ping.
  • Acabo de instalar git haciendo apt-get install git(dependencias instaladas)
  • Estoy ejecutando git desde la terminal (no estoy usando git-shell)

¿Qué está causando esto y cómo solucionarlo? ¡Cualquier ayuda sería genial!

ACTUALIZAR

He clonado el repositorio en Windows usando git clone //192.168.100.18/repo/intranet.gitsin problemas. Entonces, ¡el repositorio es accesible y existe! ¿Quizás el problema se deba a las credenciales del usuario?

Tomás Ramírez
fuente
No estoy realmente seguro de si esta pregunta pertenece aquí, pero he visto preguntas similares sobre SF
Tomás Ramírez

Respuestas:

26

Depende de cómo haya configurado su servidor para servir contenido.

Si sobre ssh:

git clone [email protected]:repo/repository.git

o si un servidor web proporciona el contenido (http o https)

https://[email protected]/repo/repository.git

o si está disponible a través de una ruta de archivo:

git clone file://path/to/repo

o si el servidor ejecuta el demonio git:

git clone git://192.168.100.18/repo
89c3b1b8-b1ae-11e6-b842-48d705
fuente
3
En Windows, estoy clonando usando git clone //192.168.100.18/repo/repository.git, pero inicié sesión previamente en el 192.168.100.18mecanizado, ¿esta es la file://forma?
Tomás Ramírez
1
respuesta útil, gracias! Para clonar un repositorio ubicado en una carpeta compartida de Windows que utilicégit clone file://\\\PC1\path-to-repo-dir
Ivan Ferrer Villa
@IvanFerrerVilla casi, el camino real es:file:///\\PC1\path-to-repo-dir
Mikl X
@MiklX y ¿cómo incluirías un nombre de usuario y contraseña?
m4l490n
12

El manual para git-clonedice:

Git natively supports ssh, git, http, https, ftp, ftps, and rsync protocols

Tenga en cuenta que SMB no está en la lista.

Cuando se ejecuta giten Windows, la //host/pathsintaxis funciona porque el sistema operativo lo admite de forma nativa: las rutas remotas SMB se pueden usar en cualquier lugar donde se pueda usar una ruta local. Ese no es el caso en Unix, donde SMB es algo extraño, y //es equivalente al /algoritmo de resolución de nombre de ruta.

monte el sistema de archivos remoto, entonces podrá referirse a él con un nombre de ruta de estilo unix que git(y cualquier otra herramienta en el sistema) entienda.

Para obtener información sobre el montaje de smbfs: /ubuntu/137011/how-to-mount-a-samba-shared-folder-ubuntu-x-ubuntu

Comunidad
fuente