===== GIT DIFA ===== Ogni utente abilitato può creare repository in /users/nome.cognome/ e gestire in autonomia ulteriori abilitazioni. Attualmente non sono imposti dal sistema vincoli di occupazione di spazio o numero di repository, ma valgono le normali regole di civile convivenza, in particolare i repository non vanno usati per archiviare grossi file (video, musica, immagini, ...). **Gli amministratori effettueranno controlli e potranno sospendere l'accesso agli utenti che abusino del servizio.** ==== Accesso ==== Per prima cosa bisogna avere un utente abilitato. Si inizia generando una chiave ssh, se non la si ha già: ssh-keygen Questo genera due file in ~/.ssh, normalmente **id_rsa** (chiave segreta) e **id_rsa.__pub__** (chiave pubblica). La chiave **pubblica** va spedita via mail da casella **istituzionale** a difa.csi@unibo.it (i non strutturati devono tenere in copia il referente) perché venga aggiunta alla lista degli utenti abilitati. **Nota Putty**: se la chiave viene generata con ''PuTTYgen.exe'' (del pacchetto Putty per Windows) e viene utilizzata con OpenSSH, può essere necessario convertirla nel formato OpenSSH da PuTTYgen col comando ''Conversions, Export OpenSSH key''. Va poi aggiunta una sezione a ~/.ssh/config : Host gitdifa User gitolite3 hostname web1.difa.unibo.it IdentityFile ~/.ssh/id_rsa ForwardX11 no È possibile avere più chiavi pubbliche abilitate per un singolo utente (p.e. una per il PC fisso ed un'altra per il portatile). Tutte le chiavi identificano **un singolo utente**: non c'è modo di dire "con questa chiave ho accesso in sola lettura a questo repository mentre con quest'altra accedo in scrittura". Una volta configurato il client, è possibile creare un proprio repository myrepo con: git clone gitdifa:users/nome.cognome/myrepo ==== Gestione permessi ==== Sui propri repository è possibile gestire i permessi degli altri utenti. ssh gitdifa perms -h