Erro ao clonar gitosis-admin na nova configuração

4

Eu tenho o seguinte no meu gitosis.conf. (Criado via gitsosis-init < id_rsa.pub com a chave do meu laptop)

[gitosis]
loglevel = DEBUG

[group gitosis-admin]
writable = gitosis-admin
members = michael@laptop

Quando tento git clone git@SERVER:gitsos-admin.git , obtenho os seguintes erros:

Initialized empty Git repository in /home/michael/gitsos-admin/.git/
DEBUG:gitosis.serve.main:Got command "git-upload-pack 'gitsos-admin.git'"
DEBUG:gitosis.access.haveAccess:Access check for 'michael@laptop' as 'writable' on 'gitsos-admin.git'...
DEBUG:gitosis.access.haveAccess:Stripping .git suffix from 'gitsos-admin.git', new value 'gitsos-admin'
DEBUG:gitosis.group.getMembership:found 'michael@laptop' in 'gitosis-admin'
DEBUG:gitosis.access.haveAccess:Access check for 'michael@laptop' as 'writeable' on 'gitsos-admin.git'...
DEBUG:gitosis.access.haveAccess:Stripping .git suffix from 'gitsos-admin.git', new value 'gitsos-admin'
DEBUG:gitosis.group.getMembership:found 'michael@laptop' in 'gitosis-admin'
DEBUG:gitosis.access.haveAccess:Access check for 'michael@laptop' as 'readonly' on 'gitsos-admin.git'...
DEBUG:gitosis.access.haveAccess:Stripping .git suffix from 'gitsos-admin.git', new value 'gitsos-admin'
DEBUG:gitosis.group.getMembership:found 'michael@laptop' in 'gitosis-admin'
ERROR:gitosis.serve.main:Repository read access denied
fatal: The remote end hung up unexpectedly

Eu sei que minha chave está sendo aceita porque tentei fazer o login via SSH e, embora um terminal não seja alocado, a autorização funciona.

    
por Michael Mior 06.08.2009 / 18:02

4 respostas

3

Não tenho a certeza se cometeu um erro ao colar a sua pergunta, mas tem 100% de resultados positivos: git clone git@SERVER:gitsos-admin.git e não git@SERVER:gitosis-admin.git ...

É uma mudança sutil, mas seu exemplo mostra que você está tentando clonar gitsos -admin.git e não gitosis -admin.git

    
por 13.08.2009 / 00:47
0

Você tem certeza de que o usuário que a gitosis está executando tem privilégios de acesso ao diretório em que o repositório está? (E todos os seus subdiretórios, incluindo o repositório em si.) Eu me deparei com esse problema quando configuramos nosso servidor de gitosis.

    
por 12.08.2009 / 23:52
0

Outra razão que isso pode acontecer é se os nomes dos arquivos de chaves não coincidirem com os nomes em gitosis.conf. O ponto importante é este: seu nome aparece em três lugares. Primeiro, no arquivo gitosis.conf. Segundo no nome do arquivo de chaves. Terceiro, dentro do arquivo de chaves no final da sua chave pública.

Eu descobri da maneira mais difícil que o nome do arquivo de chaves tem que ser seu nome de usuário (no gitosis.conf) com ".pub" anexado a ele. Então, por exemplo, se o seu nome de usuário for "mtiller" no gitosis.conf, então seu arquivo de chaves deve ser chamado de "mtiller.pub". O nome dentro do keyfile é (tanto quanto eu posso dizer) irrelevante.

Isso pode ser extremamente confuso, porque mesmo a saída de depuração do Git não diz algo explícito como "não foi possível encontrar a chave para o usuário xyz", o que é realmente irritante. Em outras palavras, ele envia mensagens / erros de autorização quando o problema é realmente um problema de autenticação.

Dependendo de como você importar as chaves, isso pode ficar confuso. Embora eu não ache que o método que você mencionou na sua pergunta causaria esse problema, eu o menciono porque acertei sua pergunta enquanto procurava por soluções para os problemas de incompatibilidade de nomes, para que alguém aparecesse em algum ponto com esse problema.

    
por 12.03.2010 / 20:40
0

Eu sei que isso não é diretamente uma resposta para sua pergunta aqui, mas eu não tenho representação suficiente. para deixar um comentário. O que Michael Tiller diz não está totalmente correto. Eu estava correndo em um problema semelhante que eu soletrei aqui

Como posso faça a gitosis distinguir entre dois usuários com o mesmo username

O nome que você usa no gitosis.conf e o nome do arquivo de chave ssh precisam ser os mesmos. No entanto, isso não precisa corresponder de qualquer forma com o elemento username dentro do arquivo de chave ssh.

    
por 10.01.2011 / 01:41

Tags