O clone Git funciona apenas com ssh: // git @ .. e não com git @

11

Alguma idéia de por que um repositório GIT funcionaria apenas ao usar ssh://[email protected]/repo.gite não também ao usar [email protected]/repo.git?

É uma configuração de servidor de outra pessoa, por isso não faço ideia de como foi configurada, mas no BitBucket ou no GitHub eu posso apenas usar [email protected]/repo.gite funciona e clona o repositório usando o protocolo SSH. Alguma idéia do porquê desse servidor iy só funciona quando se usa ssh://[email protected]/repo.git?

Então, eu preciso adicionar o ssh://na frente.

daniels
fonte
O servidor usa uma porta SSH alternativa? Comossh://[email protected]:2222/
7ochem 10/0418
Não. São 22. Como ssh://[email protected]/repo.gitfunciona enquanto [email protected]/repo.gitnão. Eu não estou adicionando o :portem nenhum caso. Quando eu tento sem ssh://eu entendo fatal: repository '[email protected]/something/repo.git' does not exist. Com ssh://[email protected]/something/repo.gitisso funciona.
Daniels #
Um problema de configuração de algum tipo (talvez um problema de firewall? Nome de usuário?) - Eu tenho um problema semelhante com uma instalação na minha instituição. No entanto, o acesso via https funciona - portanto, a solução é usar as regras de reescrita deste encadeamento: stackoverflow.com/questions/15589682/…
DetlevCM

Respostas:

32

Você está usando a sintaxe incorreta.

Quando você remove o scheme://prefixo, o git não interpreta mais seu endereço no estilo de URL, mas como o estilo rcp / scp. Mas para endereços no estilo rcp / scp, o caminho deve ser separado do usuário @ host usando dois pontos: (especificando que uma porta não é suportada). Por exemplo:

git clone [email protected]:repo.git

git clone [email protected]:daniels/example.git

Sem os dois pontos, o git interpretará apenas o endereço como um caminho local.

(Você pode ver mais detalhes na página de manual git clone ou git fetch .)

user1686
fonte
Hah, mistério resolvido. Você está certo. Obrigado.
Daniels #
Eu estava usando o servidor BitBucket (antigo Stash, o que você instala no seu servidor, não a versão em nuvem) e apenas copiei e colei o comando GIT a partir daí. Por alguma razão, eles não adicionam os que estão faltando :.
Daniels #