A través del desarrollo de este tutorial pondrá en práctica los diferentes conceptos vistos durante el módulo.
Se espera que al finalizar usted pueda:
init
, add
, commit
, status
, log
y checkout
.El punto de partida es un proyecto web que contiene diferentes recetas de cocina hispanoamericana. Creará el repositorio y agregará nuevas recetas al sitio web.
Descargue los archivos del proyecto disponibles en este repositorio:
Utilice la opción Download ZIP en el botón Code.
Para realizar este tutorial usted debe tener claras las respuestas a las siguientes preguntas:
Pregunta 1. ¿Qué es un repositorio?
Pregunta 2. ¿Cuáles son las zonas de trabajo en Git?
Pregunta 3. ¿Cómo consultar el estado de un repositorio?
Pregunta 4. ¿Cómo se agregan archivos al área de preparación?
Pregunta 5. ¿Qué es un commit
?
Pregunta 6. ¿Cómo consultar el historial del repositorio?
Pregunta 7. ¿Es posible devolverse a una versión anterior?
Si no es así, por favor revise los videos y el material propuesto antes de seguir. De esta forma podrá sacarle más provecho.
3.1. Cree la carpeta /recetario
en el directorio de su preferencia.
$ mkdir recetario
3.2. Desde Git Bash
o la terminal
ubíquese en la carpeta.
$ cd recetario
3.3. Cree un repositorio mediante el comando init
.
$ git init
Verifíquelo consultando los archivos y directorios ocultos en la carpeta.
$ ls -a
4.1. Copie el contenido de la carpeta /recetario
en el directorio de su repositorio local.
4.2. Consulte el estado de su repositorio.
$ git status
Note que los archivos están en la copia de trabajo local, pero aún no han sido incluidos al área de preparación.
4.3. Añada las carpetas de recetas e imágenes al área de preparación.
$ git add . //Al ejecutar el comando de esta forma, se están agregando todos los cambios al área de preparación.
4.4. Consulte el estado de su repositorio e identifique los cambios.
$ git status
Ahora los archivos han sido etiquetados como new file
, es decir que se encuentran por primera vez en el área de preparación y están pendientes de ser enviados al repositorio.
4.5. Utilice el comando commit
para añadir los archivos que están en el área de preparación al repositorio .
$ git commit -m "Se añade codigo base" //La opción -m implica que habrá un mensaje de confirmación asociado al commit
Note que Git especifica cuántos archivos han sido cambiados y cuántas líneas de código han sido insertadas o eliminadas.
El autor de un commit
debe comentar lo que hizo mediante un breve mensaje. Esto ayuda a otras personas (y a sí mismo) a comprender más adelante el propósito de los cambios.
4.6. Consulte el historial de cambios.
$ git log
Note que además de la información básica del commit
, también es posible identificar la rama donde se realizaron los cambios y el identificador único del mismo. Este último le permitirá buscarlo o devolverse de commit
más adelante.
En este momento, ya cuenta con el código base del proyecto en el repositorio y está listo para empezar a trabajar en él.
Se ha identificado que la imagen en la receta Arroz con coco no corresponde al plato. Ubíquese en el siguiente directorio desde su copia de trabajo local: /recetas/Colombia/arroz_coco.html
y corrija la ruta de la imagen por: ../../imagenes/arroz-coco.jpg
Una vez realizado el ajuste realice los siguientes pasos:
5.1. Verifique el estado del repositorio.
$ git status
Ahora el archivo /recetas/Colombia/arroz_coco.html
ha sido etiquetado como modified
(en color rojo), es decir que Git identificó cambios en el archivo de la copia de trabajo local que aún no han sido movidos al área de preparación.
5.2. Agregue los cambios al área de preparación.
$ git add recetas/Colombia/arroz_coco.html //de esta forma se agrega archivo específico
5.3. Consulte el estado del repositorio para verificar los cambios.
$ git status
El archivo /recetas/Colombia/arroz_coco.html
ha sido etiquetado como modified
(en color verde), es decir que los cambios ya fueron movidos al área de preparación y están pendientes de guardarse en el repositorio.
5.4. Una vez esté seguro del cambio, confirmelo en el repositorio.
$ git commit -m "Se modifica ruta de imagen en receta"
5.5. Consulte el historial de cambios.
$ git log
Verifique los 2 commit
realizados hasta el momento: su identificador, fecha de creación, autor y mensajes de confirmación.
6.1. Utilice el comando diff
para consultar las diferencias entre un commit y otro.
$ git diff <id_commit2>..<id_commit1>
Tenga en cuenta que este comando requiere tener conocimiento del id de los commit
.
Una vez ejecutado le permite evidenciar el directorio del archivo modificado y las líneas específicas que fueron cambiadas, en este caso la línea roja representa lo que estaba en la versión anterior y la verde lo que está en la versión actual.
Después de agregar el código base y modificar un archivo, es hora de agregar una nueva receta al proyecto.
7.1. Copie la carpeta /files_to_add/Mexico
en el directorio /recetas
de su copia de trabajo local.
7.2. Copie la imagen /files_to_add/imagenes/pozole.jpg
en la carpeta /imagenes
de su copia de trabajo local.
7.3. Verifique el estado del repositorio.
$ git status
7.4. Agregue los cambios al área de preparación.
$ git add .
7.5. Consulte el estado del repositorio para verificar los cambios.
$ git status
7.6. Confirme los cambios en el repositorio.
$ git commit -m "Se incluye receta mexicana"
7.7. Consulte el historial de cambios.
$ git log
Verifique los 3 commit
realizados hasta el momento: su identificador, fecha de creación, autor y mensajes de confirmación para realizar la siguiente parte del tutorial.
8.1. Identifique el ID del commit
al cual desea regresar y utilice el comando checkout
.
$ git checkout <id_commit>.
Observe que Git responde con la descripción del commit
en el que se encontraba antes de ejecutar el comando y en el que se encuentra ahora.
8.2. Consulte el historial del repositorio nuevamente.
$ git log
Ahora se han revertido los cambios y su proyecto se encuentra como en el primer commit
.
Para deshacer cambios en su copia de trabajo local, utilice el comando checkout
de la siguiente forma:
$ git checkout HEAD <ruta_archivo>