Preparación de archivos para commit en Git
Hacer seguimiento de archivos es solo la mitad
del trabajo. También debemos indicarle a Git
en qué momento recordar el estado
del archivo para un commit posterior.
Esto también se hace usando el
comando multifuncional add.
Ahora discutiremos este punto delicado con más detalle.
Supongamos que creamos el archivo index.html.
Inicialmente será no rastreado:
Untracked files:
index.html
Hagámoslo rastreado:
git add index.html
Ahora aparece en la lista de archivos preparados para commit, como un archivo nuevo:
Changes to be committed:
new file: index.html
Modifiquemos ahora el texto del archivo. En este caso, el archivo aparecerá en la sección de no preparados para commit, pero ya como modificado:
Changes not staged for commit:
modified: index.html
Es más, este archivo aparecerá en dos secciones a la vez:
Changes to be committed:
new file: index.html
Changes not staged for commit:
modified: index.html
¿Cómo es posible? El hecho es que Git guarda
(indexa) exactamente el estado actual
del archivo. Por estado se entiende el texto actual
del archivo, y también si ha sido creado o eliminado.
Si el archivo es modificado, sus cambios no se guardarán
automáticamente (no se indexarán)
en Git. Para ello es necesario ejecutar nuevamente
el comando add. Básicamente, este comando
debe verse como agregar
el estado actual del archivo al nuevo commit.
Precisamente por eso vemos nuestro archivo en varias listas: son diferentes versiones del archivo.
Hagamos que Git indexe
el estado actual de nuestro archivo index.html,
en el cual hemos hecho cambios.
Ejecutemos para él el comando add:
git add index.html
Después de esto, la versión actual estará preparada para commit y aparecerá en la sección correspondiente:
Changes to be committed:
modified: index.html
Y esto debe hacerse cada vez.
Cuando realizas cambios en un archivo,
debes indexarlos
para el siguiente commit usando
el comando add. Por supuesto,
si deseas incluir esos
cambios en el siguiente commit.
Crea un nuevo archivo. Indexa tu archivo. Mira el estado.
Haz un cambio en tu archivo. Mira el estado. Indexa tu archivo. Mira el estado.
Haz otro cambio en tu archivo. Mira el estado. Indexa tu archivo. Mira el estado.