Substitua o usuário gitolite3 pelo git

5

Estou instalando o gitolite3 em um servidor, com ssh e http pulling / pushing / alltherest. Durante o processo, um usuário e um grupo gitolite3 são criados.

Quando eu corro:

$ ssh gitolite3@server info

Eu recebo a mensagem gitolite3 correta com as informações do repositório RW.

O problema é que eu quero o usuário usual git em vez do gitolite3, sem quebrar tudo. Algum outro tópico mencionou a criação do usuário git com o mesmo uid ang gid, mas isso não dá os mesmos resultados acima.

Quando eu faço o login (usando a tela de login gráfica convencional), há o meu usuário administrador habitual, e de alguma forma o nome de usuário gitolite3 (mas não tenho certeza se esse é o gitolite3 ou o alias do usuário git que eu criei).

Como eu crio o usuário git / substituo o usuário gitolite3 para que as informações do ssh git @ server funcionem com o gitolite3? E o que determina exatamente quando um usuário pode efetuar login usando a tela de login e como desativá-lo?

    
por Florian Mertens 04.08.2013 / 01:00

4 respostas

1

Se este for um novo ambiente, eu apenas criaria o novo usuário git como normal e depois executaria a configuração do gitolite para esse usuário (e esqueceria o usuário gitolite3).

Se você realmente quiser manter a atual configuração de gitolite / repositórios / etc. provavelmente você pode copiar todos os arquivos relevantes para o usuário assim que estiver pronto (e certificar-se de que as informações de propriedade estejam atualizadas) e ele pode funcionar (verifique os documentos gitolite sobre como mover os repositórios para uma nova máquina caso ele indique algum extra dicas sobre esse processo).

    
por 04.08.2013 / 03:54
4

Se você ainda não tem um usuário git e basicamente deseja renomear o usuário gitolite3 padrão, pode ser bastante fácil. Tente executar o seguinte comando como um usuário privilegiado.

usermod -l git gitolite3

Isso deve renomear o usuário gitolite3 para git. O que deve permitir que os comandos ssh funcionem como você queria.

ssh git@hostname info
    
por 04.01.2014 / 10:08
0

Seu problema é que você não quer digitar o nome, não o nome como tal. Então não faça:

Coloque

ssg () {

    ssh gitolite3@server $@
}

ou

alias ssg="ssh gitolite3@server $@"

no seu .bashrc , fonte-lo novamente e depois disso você pode apenas dizer ssg info . Claro, você pode usar o que quiser e não colidir com um comando que você precisa em vez de ssg .

Existem duas razões para fazer assim: Primeiro, é ainda menor que ssh git@server info e segundo, eu não gosto de mudar esse tipo de nome padrão, pois você não pode ter certeza de que não há nenhuma dependência codificada neste nome no sistema, a menos que esteja documentado que não existe ou como alterar o padrão.

Onde os usuários válidos para login da GUI estão configurados depende da sua distribuição, ambiente de área de trabalho e gerenciador de exibição.

    
por 04.08.2013 / 01:20
0

Adicione outro usuário com o mesmo uid, gid e homedirectory.

Você escreveu que viu o sugerido, "mas isso não dá os mesmos resultados acima". Eu não sei quais problemas você encontrou. Talvez você tenha perdido a configuração do mesmo diretório pessoal. Caso contrário, eu não sei, porque é assim que eu faço e funciona bem.

Eu uso um rpm que cria e usa um usuário gitolite3. Eu não quero mexer com o rpm, mas ainda não uso esse longo nome de usuário nos comandos, então eu tenho duplicado a linha sobre o gitolite3 em / etc / hosts e uso o git como nome de usuário na linha extra.

    
por 15.12.2017 / 15:03