Ospito il mio repository git su un VPS. Diciamo che il mio utente è john.
Sto usando il protocollo ssh per accedere al mio repository git, quindi il mio URL è qualcosa di simile ssh://john@myserver.com/path/to/git/myrepo/
.
Root è il proprietario di tutto ciò che è sotto /path/to/git
Sto tentando di dare accesso in lettura / scrittura a john a tutto ciò che è sotto /path/to/git/myrepo
Ho provato sia chmod
e setfacl
al controllo degli accessi, ma entrambi non riuscire allo stesso modo: si applicano i diritti in modo ricorsivo (con le giuste opzioni) a tutte le attuali sottodirectory esistenti di /path/to/git/myrepo
, ma non appena viene creata una nuova directory, il mio utente non può scrivere nella nuova directory.
So che ci sono hook in git che mi permetterebbero di riapplicare i diritti dopo ogni commit, ma sto iniziando a pensare che sto andando nella direzione sbagliata perché questo sembra troppo complicato per uno scopo molto basilare.
Q : Come devo impostare il mio diritto di dare a rw l'accesso a john a qualsiasi cosa sotto /path/to/git/myrepo
e renderlo resistente al cambiamento della struttura ad albero?
D2 : Se dovessi fare un passo indietro, cambiare l'approccio generale, per favore dimmelo.
Modifica : alla domanda è stata data una risposta così com'è, ma quella era la domanda sbagliata. La domanda giusta sarebbe stata "Come configurare un repository bare git sul server per l'uso con accesso ssh?". Vedi la mia risposta.
g+s
. Ovviamente dovrai prima capire anche le basi dichmod
.