¿Cómo comtesting Gitolite que el usuario actual tiene un permiso de escritura / lectura para un depósito dado? ¿Esto se hace mediante un shell personalizado? Si es así, ¿cómo funciona?
Está utilizando el mecanismo de command forzado ssh para llamar al script gitolite-shell.
Gitolite registra un usuario agregando a ~ git / ssh / authorized_keys una línea similar a:
command="/devit_home/users/vobadm/gitpoc/ce7/gitolite/bin/gitolite-shell gitoliteadm",no-port-forwarding,no-X11-for warding,no-agent-forwarding,no-pty ssh-rsa AAAAB3N
La identificación del usuario se deriva directamente del nombre de la key pública.
Para get más información, consulte " ¿Cómo funcionan los progtwigs como la gitolita? ".
El acceso de lectura / escritura está declarado en el file gitolite.conf
.
La mayor parte de la potencia de la gitolita se encuentra en el file
conf/gitolite.conf
, que especifica el control de acceso detallado para los repositorys.
Todo lo que no sea agregar usuarios pasa de este file.
@staff = dilbert alice # line 1 @projects = foo bar # line 2 repo @projects baz # line 3 RW+ = @staff # line 4 - master = ashok # line 5 RW = ashok # line 6 R = wally # line 7