In primo luogo, iniziamo con "non esiste un provider on line che consenta elenchi di controllo di accesso per brach come parte del suo servizio di base". Non esiste come tale.
Ciò che esiste è la possibilità di aggiungere hook di commit. Ad esempio, in git puoi inserire un hook di pre-ricezione sul server . Questo hook dovrebbe verificare se la persona che esegue il commit è uno dei committer autorizzati per il ramo e lo rifiuta se non lo fa. Questo non implica alcun tipo di server centralizzato e sembra che github (per esempio) non faccia hook arbitrari di pre-ricezione. Potresti farlo in casa con un server git - basta dire "quello là è il padrone dei maestri" e andare da lì.
Guarda invece cosa stai cercando di realizzare. Vuoi che alcune persone siano in grado di impegnarsi in un'area specifica di codice che viene pubblicata in produzione. potresti farlo su github impostando i livelli di accesso sul repository e gli sviluppatori fanno parte del team di accesso in scrittura per quel repository e i progettisti fanno parte del team di accesso in lettura. I progettisti quindi biforcherebbero il repository (a cui poi avrebbero accesso) e invieranno richieste di pull al repository principale per le modifiche che vengono spostate. La gestione della staging e della produzione da questo è un dettaglio di implementazione.
D'altra parte, se sei disposto a sborsare un po 'di soldi (lo faresti se stai andando per un'organizzazione github con repository privati ...) potresti voler dare un'occhiata a Stash in stile classico (Sono sorpreso che questo non è stato considerato dato che stai già usando un altro prodotto atlassian ).
Rivendicazioni di Atlasssian sotto la sua "impresa: sicurezza" blurb:
Stash's permissions levels make sure that the right people always have access to the right code. The simple yet powerful user interface makes it easy to manage permissions.
Set high-level global permissions, then fine tune them at the project, repository, or even branch levels with read/write/admin restrictions.
E, bene, questo è quello che stai descrivendo. Stash è essenzialmente un server bitbucket di livello enterprise in house. Poiché la tua azienda ha meno di 10 utenti, il prezzo per questo è di $ 10. Non $ 10 / mese o $ 10 / utente. $ 10. Che è abbastanza difficile da battere come un prezzo.
Quindi imposta i tuoi rami, imposta chi può impegnarsi a loro, imposta la richiesta di pull / la funzione di revisione del codice e le condizioni di approvazione o comunque vuoi che il flusso di lavoro funzioni e fallo. Per un'organizzazione così piccola starei davvero a guardare come una valida alternativa, soprattutto se non sei già legato ad altri sistemi incompatibili (un ex datore di lavoro lo ha considerato, ma era già integrato con il modo in cui i problemi di github funzionavano e così non andare ovunque)