Eliminar un submódulo en Git
Este tutorial demuestra cómo eliminar un submódulo en git.
Al desarrollar un proyecto de software, a menudo usamos marcos y bibliotecas externos requeridos por nuestro proyecto. Estos marcos y bibliotecas pueden ser de código abierto y mantenerse en un repositorio de git.
Es posible que deseemos mantener el código fuente de dichas bibliotecas externas en nuestro directorio de proyectos en nuestro repositorio de git. La función de submódulos de git nos permite mantener dichas fuentes externas, que son repositorios Git separados, como subdirectorios en nuestro repositorio Git de proyecto.
Luego, podemos decidir eliminar dichos submódulos de Git, ya que es posible que ya no sean relevantes para nuestro proyecto.
Ahora lo explicaremos con un ejemplo.
Eliminar un submódulo en Git
Cuando trabajamos en proyectos de software, a menudo necesitamos usar fuentes externas de las bibliotecas. Las bibliotecas externas pueden ser desarrolladas por un tercero o un equipo diferente.
Estas bibliotecas externas se pueden rastrear en un repositorio Git separado.
Podemos usar la función de submódulo de Git para incorporar un repositorio de Git externo como un subdirectorio del repositorio de Git de nuestro proyecto. Por lo tanto, podemos clonar otro repositorio en nuestro proyecto y mantener los commits de cada uno por separado.
Por lo general, podemos reemplazar o eliminar dichas bibliotecas externas. Podemos sentir que nuestro proyecto ya no necesita una biblioteca externa de este tipo.
Por lo tanto, decidimos eliminar la biblioteca externa de nuestro repositorio Git del proyecto. Para esto, debemos eliminar el submódulo Git de la biblioteca externa.
Supongamos que tenemos un submódulo good-ext-lib
presente en el repositorio Git de nuestro proyecto. Ahora queremos que el submódulo good-ext-lib
se elimine del repositorio de Git y del sistema de archivos.
Necesitamos ejecutar los comandos de Git de la siguiente manera para eliminar el submódulo.
$ git submodule deinit -f path/to/good-ext-lib
$ rm -rf .git/modules/path/to/good-ext-lib
$ git rm -f path/to/good-ext-lib
El comando git submodule deninit
anula el registro del submódulo good-ext-lib
. Elimina toda la sección submodule.$name
del archivo git/config
. Además, elimina el árbol de trabajo del submódulo.
El comando rm -rf
con la ruta del submódulo good-ext-lib
en la carpeta .git
elimina el directorio del submódulo del directorio .git/modules
de nuestro proyecto.
El comando git rm
con la ruta del submódulo good-ext-lib
en el directorio del proyecto elimina los datos de seguimiento del superproyecto (nuestro proyecto). Elimina la entrada gitlink
. Además, elimina la sección de submódulo presente en el archivo .gitmodules
y organiza el archivo.
Finalmente, debemos confirmar la eliminación del submódulo good-ext-lib
de la siguiente manera.
$ git commit -m "removed submodule good-ext-lib"
Por lo tanto, ahora hemos eliminado el submódulo good-ext-lib
del directorio del proyecto en Git.
Por lo tanto, hemos mostrado cómo eliminar un submódulo en Git.
Para mayor información por favor visite -