Difference between revisions of "Git, Submodules"

From Wiki de Caballero
Jump to navigation Jump to search
Line 4: Line 4:
===Contenedor y contenido actúan independientemente===
===Contenedor y contenido actúan independientemente===
El repositorio y el ''submodule'' actúan como repositorios independientes aunque el ''submodule'' esté adentro del repositorio. Esto es importante ya que si se modifica el ''submodule'' hay que tratar esos cambios en ese repositorio. Además, al cambiar el ''submodule'' el repositorio contenedor tiene que se modificado para que sepa que el ''submodule'' cambió.
El repositorio y el ''submodule'' actúan como repositorios independientes aunque el ''submodule'' esté adentro del repositorio. Esto es importante ya que si se modifica el ''submodule'' hay que tratar esos cambios en ese repositorio. Además, al cambiar el ''submodule'' el repositorio contenedor tiene que se modificado para que sepa que el ''submodule'' cambió.
==Agregar un ''submodule''==
<source lang="bash">git submodule add [remote] [ubicación adentro del proyecto]</source>


===Referencia a un punto de la historia del ''submodule''===
===Referencia a un punto de la historia del ''submodule''===
Line 12: Line 15:
Al momento de hacer <code>git status</code>, por defecto no se muestra información de los módulos, para esto se puede configurar globalmente que se muestre un resumen de los submodulos:
Al momento de hacer <code>git status</code>, por defecto no se muestra información de los módulos, para esto se puede configurar globalmente que se muestre un resumen de los submodulos:
<source lang="bash">git config --global status.submoduleSummary true</source>
<source lang="bash">git config --global status.submoduleSummary true</source>
===Más información en diff===
<source lang="bash">git config --global diff.submodule log</source>


==Referencias==
==Referencias==
* [https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 Mastering Git submodules - Medium]
* [https://medium.com/@porteneuve/mastering-git-submodules-34c65e940407 Mastering Git submodules - Medium]

Revision as of 00:21, 16 May 2016

Los submodules son una forma de importar proyectos de Git adentro de otro proyecto Git. Al hablar de submodule se hace referencia al proyecto que está adentro de otro.

Importante

Contenedor y contenido actúan independientemente

El repositorio y el submodule actúan como repositorios independientes aunque el submodule esté adentro del repositorio. Esto es importante ya que si se modifica el submodule hay que tratar esos cambios en ese repositorio. Además, al cambiar el submodule el repositorio contenedor tiene que se modificado para que sepa que el submodule cambió.

Agregar un submodule

git submodule add [remote] [ubicación adentro del proyecto]

Referencia a un punto de la historia del submodule

Al crear un submodule se guarda la referencia a qué commit se usa, es decir que si se actualiza el proyecto que corresponde al submodule, este no se actualiza directamente en un proyecto que lo use como submodule.

Configuraciones Importantes

Configuración para git status

Al momento de hacer git status, por defecto no se muestra información de los módulos, para esto se puede configurar globalmente que se muestre un resumen de los submodulos:

git config --global status.submoduleSummary true

Más información en diff

git config --global diff.submodule log

Referencias