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.