Usando due repository git in una cartella

Ecco la scena: attualmente sto lavorando sul mio framework e sul sito web di un cliente. Ecco la struttura:

. .. _application _framework _public 

Mi piacerebbe avere un repository con _framework / * _public / index.php e la struttura _application (cartelle vuote per _controllers _models e _views) su github. Inoltre mi piacerebbe avere un pronti contro termine contenente TUTTO questo localmente.

Ho capito che con i moduli git avrei potuto farlo, ma dopo aver cercato alcuni tutorial non ho ancora capito il modo di farlo.

Qualcuno potrebbe spiegarlo un po ‘di più? Molte grazie!

Mi sembra che tu possa definire un repository per ogni struttura che desideri e combinarli in un super progetto attraverso i sottomoduli .

Vedi questa domanda per alcuni dettagli sulla natura dei sottomoduli.

Estratto:

Un sottomodulo consente di avere uno sviluppo di un approccio basato sui componenti , in cui il progetto principale si riferisce solo a commit specifici di altri componenti (qui “altri repository Git dichiarati come sottomoduli”).

Un sottomodulo è un marcatore (commit) in un altro repository Git che non è vincolato dal ciclo di sviluppo del progetto principale: esso (l’altro repository Git) può evolvere indipendentemente. Spetta al progetto principale scegliere da quell’altro repository qualunque sia il commit di cui ha bisogno.

Tuttavia, se vuoi, per comodità, modificare uno di questi sottomoduli direttamente dal tuo progetto principale, Git ti permette di farlo, a patto che tu prima pubblichi quelle modifiche al sottomodulo al suo repository Git originale, e poi impegni il tuo progetto principale riferendosi a una nuova versione di detto sottomodulo.

Ma l’idea principale rimane: fare riferimento a componenti specifici che:

  • hanno il loro ciclo di vita
  • hanno il loro set di tag
  • hanno il loro sviluppo

L’elenco di commit specifici a cui ti riferisci nel tuo progetto principale definisce la tua configurazione (questo è ciò che riguarda la gestione della configurazione, incluso il semplice sistema di controllo della versione )


Quindi se hai davvero due strutture che possono evolversi indipendentemente l’una dall’altra, i sottomoduli sono una buona scelta.