Ci sono molti vantaggi per un monorepo. Leggiamo anche che grandi aziende come Google e Facebook usano questa tecnologia per mantenere tutto il codice sorgente in un unico repo.
Ma come si fa a limitare l'accesso di un certo team ai progetti su cui stanno lavorando quando si usa un monorepo?
Ad esempio, abbiamo un'infrastruttura di microservizi:
- Servizio A
- Servizio B
- Gateway API
Il servizio A è sviluppato usando il Team A, e il servizio B è sviluppato dal Team B, mentre Api Gateway è il repository comune in questo progetto.
Come possiamo limitare l'accesso di ogni squadra solo al proprio servizio?
Attualmente manteniamo ogni parte nel proprio repository e in questo modo possiamo controllare l'accesso per ogni team. Ma mi è stato chiesto di migrare questo a monorepo, e non sono sicuro di come proteggere il codice sorgente e dividere il progetto con un simile approccio.