Control de Cambios
Ramas en Git
César Patiño
2025
# Ramas en Git Las ramas son versiones (identificador / nombre único) que se pueden tener en paralelo en un repositorio, tienen estas características: - Puedes tener tantas como necesites - Se crean a partir de un commit - Se pueden fusionar con otras ramas Sirven para mantener versiones o añadir nuevas funcionalidades y para trabajar en equipo. ---  --- ### Ejemplo 1: trabajando con dos ramas [Historial de comandos en Git Shools](./git-log-1.md)  --- ### Ejemplo 2: fast-forward [Historial de comandos en Git Shools](./git-log-2.md)  --- ### Ejemplo 3: commit de merge [Historial de comandos en Git Shools](./git-log-3.md)  --- ### git merge y tipos de merge - **Fast-forward:** con el mismo historial, se fusiona la rama origen en la rama destino y el historial queda lineal **sin commit de merge**. - **No Fast-forward:** se hace un commit de merge con el texto "Merge branch '
'" para unir los historiales de las ramas. - **Squash:** se hace un commit que une todos los cambios en la rama destino. El historial queda más limpio. --- ### Ejemplo de 3 modos de merge - [Historial](./git-log-4.md) - Repositorio de ejemplo -> `merge.zip` (en releases)  --- # Modificar mensaje de git merge Existe la opción de editar mensaje y de no hacer commit cuandos se hace un `git merge`: ```bash # Abre el editor antes de hacer el commit git merge --edit ``` ```bash # Evita que haga commit automáticamente # y te deja los cambios preparados para hacer commit git merge --no-commit ``` --- # Conflictos en Git - [Historial de comandos](./git-log-5.md) - Ejemplo en archivo `conflictos.zip` --- ### Visualización del conflicto en VS Code  --- ### Resolvemos conflicto en VS Code  --- ### Conflicto resuelto  --- # Borrar ramas en Git - **Recomendación:** revisad si la rama ha sido fusionada o si de verdad no es necesaria. Es posible que sea necesario preguntar a un compañero de trabajo. ```bash # Borrado en local: git branch -D
# Eliminado ... (commit) ``` - Este cambio puede ser irreversible si no tenemos un `remote` asociado en Github ni otra copia del repositorio. --- # Trabajo remoto con Git (Github) Continúa en [Introducción a Github](./04.introduccion-a-github.html)