Trabajando con Cambios en Submódulos
A veces, necesita trabajar con cambios dentro de un submódulo. En este paso, aprenderemos a realizar y gestionar cambios dentro de los submódulos.
Navegando al Submódulo
Para trabajar con un submódulo, debe navegar a su directorio:
cd ~/project/main-repo/libs/libgit2-backends
Desde aquí, puede usar los comandos Git estándar para ver información sobre el repositorio del submódulo:
git status
git log -3 --oneline
El comando git status muestra el estado actual del repositorio del submódulo, y git log muestra los commits recientes.
Realización de Cambios en un Submódulo
Hagamos un cambio simple en un archivo en el submódulo. Primero, creemos un nuevo archivo:
echo "## My notes on libgit2-backends" > NOTES.md
Ahora, verifiquemos el estado de nuestro cambio:
git status
Debería ver una salida que indica que tiene un archivo sin seguimiento:
Untracked files:
(use "git add <file>..." to include in what will be committed)
NOTES.md
Agreguemos y confirmemos este cambio en el submódulo:
git add NOTES.md
git commit -m "Add notes file"
Debería ver una salida que confirma su commit dentro del submódulo.
Verificación del Estado desde el Repositorio Principal
Ahora, volvamos al repositorio principal y verifiquemos el estado:
cd ~/project/main-repo
git status
Debería ver una salida que indica que el submódulo ha sido modificado:
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: libs/libgit2-backends (new commits)
Confirmación de los Cambios del Submódulo en el Repositorio Principal
Para registrar el nuevo estado del submódulo en su repositorio principal, debe agregar y confirmar los cambios:
git add libs/libgit2-backends
git commit -m "Update libgit2-backends with notes file"
La salida debería indicar que ha confirmado con éxito la nueva referencia del submódulo.
Visualización de Cambios Detallados del Submódulo
Para ver información más detallada sobre los cambios en los submódulos, puede usar:
git diff --submodule
Este comando muestra el rango de commits que se han agregado o eliminado en cada submódulo modificado.
Resumen de Trabajo con Cambios en Submódulos
Al trabajar con cambios en un submódulo, recuerde este flujo de trabajo:
- Navegue al directorio del submódulo
- Realice y confirme los cambios dentro del submódulo
- Regrese al repositorio principal
- Agregue y confirme la referencia del submódulo actualizado
Este proceso de confirmación en dos pasos (primero en el submódulo, luego en el repositorio principal) es esencial para rastrear correctamente los cambios en los submódulos.