Git Submodule consentono di incorporare un repository Git in un altro repository Git come sottodirectory. Questo è utile quando hai un progetto che dipende da una libreria o da un componente esterno. Ecco una guida di base su come utilizzare Git Submodule:
Aggiungere Submodule
Per aggiungere a Submodule al repository corrente, vai alla directory principale del repository ed esegui il seguente comando:
git submodule add <URL_repository> <destination_path>
dove <URL_repository> è l'URL del repository che si desidera incorporare ed <destination_path> è il percorso della sottodirectory nel repository corrente in cui archiviare il file Submodule.
Clone Submodule
Dopo aver aggiunto a Submodule al repository, è necessario clonarlo nel repository esistente. Per clonare Submodule, eseguire i seguenti comandi:
git submodule init
git submodule update
Il git submodule init comando inizializza Submodule e crea un collegamento al repository contenente il sottomodulo. Il git submodule update comando scarica il codice sorgente di Submodule e lo aggiorna nella sottodirectory corrispondente
.
Lavorando con Submodule
Una volta Submodule clonato nel repository, puoi lavorarci come un repository Git indipendente. Puoi effettuare il checkout dei rami, creare commits e spingere all'interno del file Submodule.
Per aggiornare il sottomodulo nel repository esistente, eseguire il comando:
git submodule update --remote
Questo comando scarica le ultime modifiche dal Submodule repository e le aggiorna nella sottodirectory corrispondente.
Rimuovere Submodule
Se non hai più bisogno di Submodule, puoi rimuoverlo eseguendo i seguenti comandi:
git submodule deinit <submodule_name>
git rm <submodule_path>
Sostituire <submodule_name> con il nome di Submodule e <submodule_path> con il percorso della sottodirectory contenente il file Submodule. Quindi, devi impegnarti e spingere questo cambiamento.
Git Submodule aiutarti a gestire le dipendenze e integrare facilmente i sottorepository nel tuo progetto principale. Ti consente di mantenere un codice sorgente separato per Submodule e di aggiornarlo facilmente quando necessario.

