GIT
Deshaciendo Cambios en Git
A lo largo del desarrollo, cometeremos errores. Afortunadamente, Git ofrece diversas herramientas para deshacer cambios y corregir errores. En este capítulo, exploraremos cómo deshacer modificaciones en archivos, revertir commits, y restaurar el estado de un proyecto a versiones anteriores. Al final de este capítulo, sabrás cómo manejar situaciones complejas y mantener el control sobre el historial de tu repositorio.
Deshacer Cambios en Archivos No Commiteados
Cuando realizas cambios en archivos pero aún no los has agregado al área de preparación, puedes deshacer esos cambios fácilmente y restaurar los archivos a su estado original.
Para restaurar un archivo modificado sin añadirlo al área de preparación, usa el comando:
bash
Si ya has agregado el archivo al área de preparación pero deseas deshacer esa acción, puedes usar:
bash
Revertir Commits
En ocasiones, un commit contiene errores o cambios no deseados. Git ofrece dos maneras principales de manejar esta situación: git reset y git revert.
Git Reset
El comando git reset
te permite mover el puntero de tu rama a un commit anterior, eliminando los commits posteriores en el proceso. Esto es útil cuando quieres "borrar" commits recientes y volver a un estado anterior.
bash
Si no quieres perder los cambios, puedes usar la opción --soft
, que preserva los archivos modificados en tu directorio de trabajo:
bash
Git Revert
A diferencia de git reset
, el comando git revert
no borra commits. En su lugar, crea un nuevo commit que "revierta" los cambios realizados en un commit anterior. Esto es útil cuando necesitas mantener el historial de cambios pero quieres anular un commit específico.
bash
Recuperar Commits Eliminados
Si accidentalmente borraste commits usando git reset
, puedes recuperarlos utilizando el comando git reflog
. Este comando rastrea todas las acciones recientes realizadas en el repositorio, permitiéndote restaurar commits eliminados.
bash
Una vez que encuentres el commit que deseas recuperar, puedes usar git reset
o git checkout
para restaurarlo.
Utilizando Git Stash para Guardar Cambios Temporales
Si estás trabajando en cambios pero necesitas cambiar de contexto o rama rápidamente, puedes "guardar" temporalmente esos cambios usando git stash
. Esto guarda tus modificaciones sin hacer un commit, permitiéndote recuperarlas más tarde.
Para guardar los cambios actuales:
bash
Para recuperar los cambios guardados:
bash
Puedes ver la lista de todos los stashes guardados usando:
bash
Conclusión
En este capítulo, hemos aprendido cómo deshacer cambios en Git, desde revertir modificaciones en archivos individuales hasta recuperar commits eliminados. Con estas herramientas, puedes manejar errores sin miedo, sabiendo que siempre puedes volver a un estado anterior. En el próximo capítulo, exploraremos cómo trabajar con etiquetas en Git y cómo utilizarlas para marcar versiones importantes en el historial de un proyecto.
- Introducción a Git y Control de Versiones
- Instalación de Git y Configuración Inicial
- Comprendiendo los Repositorios
- Flujo de Trabajo Básico en Git
- Trabajando con Ramas en Git
- Colaborando con Otros Desarrolladores
- Deshaciendo Cambios en Git
- Trabajando con Etiquetas en Git
- Rebase y Squash en Git
- Stashing y Limpiando en Git
- Comandos Avanzados de Git
- Hooks y Automatización en Git
- GitHub y la Gestión de Repositorios
- Buenas Prácticas en Git
- Conclusión y Consejos Finales