Ao configurar um repositório git no servidor local surgiu a seguinte dúvida: Como fazrler o gerrnciamento de usuarios com permissão pra acessar o repositório?
Cada usuario que eu quero permitir acessar o repositorio tem que ter uma conta no so em que estou configurando o servidor git?
Uma opção para esse tipo de controle é, no momento da criação do usuário, definir o /home do usuário como o diretório que ele terá permissão de acesso e colocá-lo como dono desse diretório. Caso não queira que os usuário tenham acesso via SSH, é só remover a permissão de acesso ao shell do sistema editando o arquivo passwd. Exemplo:
Faça a seguinte alteração na linha:
git:x:1000:1000::/home/git:/bin/sh
para git:x:1000:1000::/home/git:/usr/bin/git-shell
Obs.:O trecho “/home/git” indica o diretório do usuário, ou seja, você pode usar o diretório que desejar, inclusive criar outros. O trecho “/bin/sh” indica o shell do usuário, você irá mudar para o “git-shell”. Caso não saiba onde fica, digite which git-shell no terminal para encontrar.
De modo geral, sim. Existem outras formas, mas para um servidor simples, na rede local, você pode usar o protocolo SSH para enviar os commits para o servidor. Nesse, caso você deve criar um usuário no Sistema Operacional.
Bom, espero ter ajudado.
Segue a fonte da informação, coso queira se aprofundar no assunto: Pro GIT
A qustão e que se eu usar a estratégia sugerida acima, todos os usuários vão ter que logar e commitar como usuario git, isso eu não quero, queto que cada usiario tenha seu login e senha pra acessar o git.
Com relação ao ssh, os usuarios não vão acessar o repositorio via ssh. apenas por http mesmo.
Então, esse aí foi apenas um exemplo.
Você cria um usuário e um diretório para cada usuário.
Direcionando cada um dos usuários para os seus respectivos diretórios.
Exemplo: git:x:1000:1000::/home/git:/usr/bin/git-shell joao:x:1001:1001::/home/joao:/usr/bin/git-shell pedro:x:1002:1002::/home/pedro:/usr/bin/git-shell jose:x:1003:1003::/home/jose:/usr/bin/git-shell