ESCUELA COLOMBIANA DE INGENIERÍA - CICLOS DE VIDA DE DESARROLLO DE SOFTWARE
- En el presente laboratorio vamos a aprender los manejos básicos de GitHub, esto con el propósito de que entiendas y comiences a trabajar con esta herramienta. Para este laboratorio se trabajará de manera individual la primera parte y con dos integrantes en la segunda parte.
-
Crea un repositorio localmente.
-
Agrega un archivo de ejemplo al repositorio, el README.md puede ser una gran opción.
-
Averigua para qué sirve y como se usan estos comandos git add y git commit -m “mensaje”
-
Abre una cuenta de github, si ya la tienes, enlazala con el correo institucional.
-
Crea un repositorio en blanco (vacío) e GitHub.
-
Configura el repositorio local con el repositorio remoto.
-
Sube los cambios, teniendo en cuenta lo que averiguaste en el punto 3 Utiliza los siguientes comando en el directorio donde tienes tu proyecto, en este orden:
git add .
git commit -m "mensaje, lo que hiciste con el archivo"
git push "url repositorio"
-
Configura el correo en git local de manera correcta Configurar correo electrónico en GitHub
-
Vuelve a subir los cambios y observa que todo esté bien en el repositorio remoto (en GitHub).
- Se escogen los roles para trabajar en equipo, una persona debe escoger ser "Owner" o Propietario del repositorio y la otra "Collaborator" o Colaborador en el repositorio.
-
El owner agrega al colaborador con permisos de escritura en el repositorio que creó en la parte 1
-
El owner le comparte la url via Teams al colaborador
-
El colaborador acepta la invitación al repositorio
-
Owner y Colaborador editan el archivo README.md al mismo tiempo e intentan subir los cambios al mismo tiempo.
-
¿Que sucedió?
-
La persona que perdió la competencia de subir los cambios, tiene que resolver los conflictos, cúando haces pull de los cambios, los archivos tienen los símbolos
<<<
===
y>>>
(son normales en la resolución de conflictos), estos conflictos debes resolverlos manualmente. Como resolver Conflictos GitHub -
Volver a repetir un cambio sobre el README.md ambas personas al tiempo para volver a tener conflictos.
-
Resuelvan el conflicto con IntelliJ si es posible, Resolver conflictos en IntelliJ
De esta forma ya sabes resolver conflictos directamente sobre los archivos y usando un IDE como IntelliJ, esto te será muy útil en los futuros trabajos en equipo con Git.
- ¿Hay una mejor forma de trabajar con git para no tener conflictos?
- ¿Qué es y como funciona el Pull Request?
- Creen una rama cada uno y suban sus cambios
-
Tanto owner como colaborador hacen un cambio en el README.md y hacen un Pull Request (PR) a la rama main/master
(Recomendación : deben trabajar en equipo y distribuirse de mejor manera quien va a modificar qué, para evitar modificar los mismos archivos al mismo tiempo, si no se editan los mismos archivos la resolución de conflictos es automática)
- Teniendo en cuenta la recomendación, mezclen los cambios a la rama main a través de PR con el check/review/approval del otro compañero (Cuando se hace merge se deberían borrar las ramas en github)
Como Borrar Ramas después de un Pull Request
Se dirigen a la configuración de su repositorio:
Y en general
Se dirigen al final en el área del pull requests y seleccionan “Automatically delete head branches”
Aprobación Pull Request
Nos dirigimos (todavía en configuraciones) a Branches, en esta visualizarán donde daremos protección de nuestras ramas, seleccionamos Add rule
Aquí damos el nombre de nuestra rama (Verificar el nombre tal cual lo tenemos en nuestro repositorio) y seleccionamos la primera opción como se muestra, así estamos requiriendo que cuando se haga ese pull request en nuestra rama se necesita aprobación de otro compañero
Vamos al final y damos clic en Create
Y así protegimos nuestra rama principal, esto se vuelve muy relevante cuando trabajamos en parejas o en equipos, deberían tener un mensaje final que se vea así
- En un README.md colocar lo siguiente:
- Una sección llamada “INTEGRANTES” y allí colocar el listado de los integrantes del taller (máximo 2).
- Una sección llamada “RESPUESTAS” colocar las respuestas a las preguntas.