GCS Git Mercurial
GCS Git Mercurial
GCS Git Mercurial
Integrantes: Vera Jordan, Moreira Luis, Manzaba Iván, Baren Rosa, Litardo Heydi
2. Git
El modelo de repositorio requerido por nuestro proyecto debe ser distribuido esto es
porque la aplicación trabaja juntamente con entornos separados, normalmente en diferentes
plataformas conectadas a través de una red como es móvil, un dispositivo y web para esto
añadiremos una foto de nuestro repositorio.
Trabajar en ramas y fusionar cambios: Git te permite trabajar en diferentes ramas para
desarrollar nuevas características o solucionar problemas sin afectar la rama principal del
proyecto. Como podemos ver Git permite crear una nueva rama utilizando el comando git
branch y cambiar a ella con git checkout. Luego, puedes hacer commits en esa rama y
fusionar los cambios con la rama principal (con el comando merge) cuando estén listos.
Git también proporciona un mecanismo robusto para manejar conflictos cuando dos o
más personas realizan cambios simultáneamente en el mismo archivo. Si se produce un
conflicto, Git notifica al usuario y permite resolverlo manualmente. Esto asegura que los
cambios se fusionen de manera controlada y se evite la pérdida de trabajo.
La extensión Git Graph en Visual Studio Code ofrece una interfaz gráfica que facilita
la visualización de los cambios y la generación de informes entre diferentes versiones de un
proyecto. Además de esto, también puedes utilizar la línea de comandos de Git en la terminal
integrada de Visual Studio Code para generar informes de diferencias utilizando los
comandos de Git. Un ejemplo de esto podemos verlo en la imagen de abajo.
Figura 7. Generación de informe de cambios entre dos versiones
Git siempre nos indica el estado de repositorio, haciéndonos saber archivos nuevos,
archivos modificados, archivos eliminados y también en que archivos existen conflictos por
fusión de ramas. Con la opción que viene instalada en Visual Studio Code, podemos ver
todos estos cambios realizados en nuestro proyecto, también nos ofrece información y
opciones para estos archivos.
En los siguientes ejemplos se puede observar los cambios de una versión y otra. Git
nos indica exactamente las modificaciones que se ha hecho, y con las diversas herramientas
se puede ver de manera gráfica estos cambios.
Figura 10. Errores y cambios entre la versión actual y la anterior, desde el proyecto en local
Figura 11. Errores y cambios entre la versión actual y la anterior, desde el repositorio Github
3. Mercurial
Dentro de Mercurial, cada desarrollador puede crearse una rama y trabajar de manera
individual, apuntando hacia un mismo repositorio. Este sistema de control de versiones
permite aplicar acciones como:
Para poder crear un nuevo repositorio debemos indicar la ruta de destino de nuestro
repositorio como se muestra en la Figura.
Una vez que tengamos creado nuestro repositorio es momento de crear el primer
commit para poder subir el repositorio, se debe realizar como se muestra a continuación:
Primeramente, se debe marcar el check de los archivos esto será el comando “hg add”.
Luego asignamos un mensaje para el commit y confirmamos en el botón “Consignar”.
Figura 14. Primer "commit"
Una vez haya realizado este proceso se mostrará el registro del repositorio, aquí se
observa un gráfico, la rama en la que surgió el cambio, el mensaje que incluyo el usuario y el
autor de aquel cambio.
Por último, tenemos una ventana de información que se abrirá cada vez que se dé
doble click sobre el cambio realizado la cual nos mostrará la información del cambio, junto
con las partes que fueron modificadas para tener una mejor revisión.
Figura 17. Información de cambios realizados
4. Conclusiones
Git, siendo uno de los sistemas de control de versiones más populares, destaca por su
enfoque distribuido y su amplia comunidad de usuarios. Proporciona una forma flexible y
eficiente de trabajar en paralelo, crear ramas, fusionar cambios y gestionar conflictos.
Además, plataformas de alojamiento en la nube, como GitHub, facilitan la colaboración y el
intercambio de código entre desarrolladores.