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:
fork
de un repositorio existente.pull request
.pull request
.pull request
.El punto de partida es un proyecto web que contiene diferentes recetas de cocina hispanoamericana. Creará un repositorio, hará fork
del mismo, agregará nuevas recetas al sitio web y enviará un pull request
al repositorio base para integrar los cambios.
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é sucede al hacer fork de un repositorio?
Pregunta 2. ¿Para qué se usa un fork?
Pregunta 3. ¿Qué es un pull request?
Pregunta 4. ¿Quién puede aceptar o rechazar un pull request?
Pregunta 5. ¿Qué sucede al rechazar un pull request?
Si no es así, por favor revise los videos y el material propuesto antes de seguir. De esta forma podrá sacarle más provecho.
En esta primera sección usted deberá crear el repositorio del recetario en GitHub
, clonarlo, agregar la línea base y enviar los cambios al repositorio remoto.
GitHub
.New
.Create repository
.Con lo anterior habrá creado un repositorio remoto, ahora copie su URL para empezar a trabajar en él.
Git
Bash
o la terminal
.$ git clone <url_repositorio_github>
Al ejecutar el comando se inicia la clonación del repositorio y se genera una advertencia indicando que está vacío.
Al finalizar tendrá una carpeta con el repositorio local en el directorio definido en el punto 2.
Como se dijo en la introducción, el punto de partida para este tutorial es un proyecto web que contiene diferentes recetas de cocina hispanoamericana. Lo que se hará a continuación será realizar cambios a ese proyecto desde el repositorio local y sincronizarlos con el repositorio remoto.
Realice los siguientes pasos:
/recetario
en el directorio de su repositorio local.Git Bash
o la terminal
ubíquese en la carpeta del proyecto.$ git status
Note que los archivos están en la copia de trabajo local, pero aún no han sido incluidos en el á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.
$ 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.
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.
Como respuesta Git especifica cuántos archivos han sido cambiados y cuántas líneas de código han sido insertadas o eliminadas.
En este momento, ya cuenta con el código base del proyecto en el repositorio local y está listo para actualizar el repositorio remoto.
$ git push -u repo_remoto master //La opción -u mantiene un registro de la rama a la que se hace push, lo anterior con el fin de evitar conflictos o ausencia de información al hacer pull.
GitHub
.Ahora el código base del proyecto se encuentra en el repositorio remoto y es posible visualizarlo, navegar en él y obtener información relevante de todo el historial desde cualquier parte del mundo.
Deténgase un poco para navegar en las diferentes opciones de GitHub
.
Para hacer fork
del repositorio base realice los siguientes pasos:
1. Cree una cuenta en GitHub
(debe ser diferente a la utilizada en el punto anterior).
2. Inicie sesión en la cuenta que acaba de crear.
3. Usando el navegador web vaya al repositorio base creado en la sección anterior. Haga clic en el botón Fork
ubicado en la parte superior derecha de la pantalla.
Al finalizar, GitHub
crea una copia del repositorio base en su dominio y el nuevo repositorio tiene el nombre de su usuario/el nombre del repositorio base.
1. Haga clic en el botón Clone or Download
para copiar la URL del nuevo repositorio.
2. Abra la consola de Git Bash
o la terminal
.
3. Ubíquese en el directorio de su preferencia (allí se creará el repositorio local y debe ser una ubicación diferente a la usada en el repositorio base).
4. Clone el repositorio teniendo en cuenta la URL copiada en el punto 1.
$ git clone <url_repositorio_github>
Al finalizar tendrá una carpeta con el repositorio local en el directorio definido en el punto 2.
Siga los siguientes pasos:
/files_to_add/Mexico
en el directorio /recetas
de su copia de trabajo local.Usted creará una solicitud de extracción para integrar los cambios realizados al repositorio base.
Siga los siguientes pasos:
1. En la página de GitHub
, haga clic en la pestaña Pull request
y después en el botón New pull request
.
Note que GitHub
lo redirecciona a la página del repositorio base con el fin de hacer una comparación con su copia.
Además, le permite ver la diferencia en commits y una visualización de los archivos involucrados. Ahora haga clic en el botón Create pull request
.
2. Agregue el detalle de su propuesta y un título descriptivo. Este servirá para que el administrador del repositorio base tenga idea de los cambios que se desean integrar.
Create pull request
.Ya se ha creado el pull request
. Ahora podrá seguir comentando al respecto o cerrarlo si desea.
1. Inicie sesión en la cuenta GitHub
que contiene el repositorio base.
2. Note que tiene una notificación en la pestaña de Pull request
. Ábrala para ver su contenido y haga doble clic en el título del Pull request
para visualizar su información (el autor del pull request, la fecha y el comentario del mismo).
Visualice los archivos afectados o agregados en el Pull request
haciendo clic en la pestaña Files changed
.
3. Revise el contenido y estructura de la nueva receta.
En este caso, se ha identificado que cuenta con un título, número de personas, ingredientes y preparación. Sin embargo, falta la imagen.
4. Comente la sección del archivo donde considera que debe ir la imagen. Para hacerlo diríjase a la numeración que se encuentra a mano izquierda y haga clic sobre el símbolo +
.
Asegúrese de escribir el comentario de forma clara y descriptiva, luego haga clic en el botón Start a review
.
Finish your review
.Request
changes
y envíe el comentario.Esa opción permite que el autor del Pull request
ajuste el código y responda al comentario para fusionar los cambios.
Una vez revisado el Pull request
, debe llegar una notificación al correo electrónico registrado en GitHub
con un resumen de las observaciones recibidas.
Si desea revisar directamente en la página de GitHub
, realice los siguientes pasos:
1. Consulte la pestaña Pull request
del repositorio base en GitHub
.
Como se observa en la imagen anterior, hay un mensaje de cambios solicitados. Para ver el detalle haga clic en el título del Pull request
.
Revise la respuesta del administrador del repositorio base y realice los ajustes correspondientes.
Teniendo en cuenta la respuesta obtenida en el Pull request
, realice las correcciones sugeridas:
pozole.html
Una vez sincronizado, el repositorio base los detecta y le permite a su propietario volver a revisarlos.
1. Inicie sesión en la cuenta GitHub
que contiene el repositorio base.
2. Haga clic en la pestaña Pull request
del repositorio base y luego en el título del Pull request
para ver su detalle.
3. Haga clic en View changes
para revisar los últimos cambios.
Note que las observaciones han sido tenidas en cuenta. Es decir, que ya puede integrar los cambios.
4. Acepte el Pull request
, haciendo clic en la revisión pendiente (1 pending reviewer
) y luego en Merge Pull Request
.
merge
.Con esto habrá aceptado la solicitud de extracción y se creará un nuevo commit en el repositorio con los cambios integrados.