Git clone / pull na rede local [fechado]

17

Estou tentando clonar / puxar um repositório em outro PC usando o Ubuntu Quantal. Eu já fiz isso no Windows antes, mas não sei qual é o problema no ubuntu. Eu tentei estes:

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

Sempre recebi:

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

ou

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

Mais:

  • O outro PC possui nome de usuário e senha
  • Não é problema de rede, eu posso acessar e executar ping.
  • Acabei de instalar o git doing apt-get install git(dependências instaladas)
  • Estou executando o git no terminal (não estou usando o git-shell)

O que está causando isso e como consertar isso? Qualquer ajuda seria ótimo!

ATUALIZAR

Clonei o repositório no Windows usando git clone //192.168.100.18/repo/intranet.gitsem problemas. Portanto, o repositório é acessível e existe! Talvez o problema seja devido às credenciais do usuário?

Tomás Ramírez
fonte
Não tenho muita certeza se essa pergunta pertence aqui, mas já vi perguntas semelhantes no SF
Tomás Ramírez

Respostas:

26

Depende de como você tem seu servidor configurado para veicular conteúdo.

Se over ssh:

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

ou se um servidor da web estiver fornecendo o conteúdo (http ou https)

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

ou se disponível através de um caminho de arquivo:

git clone file://path/to/repo

ou se o servidor estiver executando o daemon git:

git clone git://192.168.100.18/repo
89c3b1b8-b1ae-11e6-b842-48d705
fonte
3
No Windows, estou clonando usando git clone //192.168.100.18/repo/repository.git, mas fiz logon anteriormente no 192.168.100.18maching, então é esse o file://caminho?
Tomás Ramírez
1
resposta útil, obrigado! Para clonar um repositório localizado em um Windows pasta compartilhada que eu useigit clone file://\\\PC1\path-to-repo-dir
Ivan Ferrer Villa
@IvanFerrerVilla quase, o caminho real é:file:///\\PC1\path-to-repo-dir
Mikl X
@MiklX e como você incluiria um nome de usuário e uma senha?
m4l490n 17/06/19
12

O manual para git-clonediz:

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

Observe que o SMB não está na lista.

Ao executar gitno Windows, a //host/pathsintaxe funciona porque o sistema operacional oferece suporte nativo - os caminhos remotos SMB podem ser usados ​​em qualquer lugar em que um caminho local possa ser usado. Esse não é o caso no unix, onde o SMB é uma coisa estranha e //é equivalente ao /algoritmo de resolução do nome do caminho.

monte o sistema de arquivos remoto, você poderá consultá-lo com um nome de caminho no estilo unix que git(e todas as outras ferramentas do sistema) entendam.

Para obter informações sobre a montagem de smbfs: /ubuntu/137011/how-to-mount-a-samba-shared-folder-ubuntu-x-ubuntu

Comunidade
fonte