Git Worktree: Trabaja en Varias Ramas sin Stash

Llevas tres archivos editados en una rama de feature, sin nada confirmado, cuando un compa帽ero te avisa de un null pointer en producci贸n. El movimiento habitual es hacer git stash, cambiar a main, arreglarlo, hacer push, y luego git stash pop con la esperanza de que nada de tu feature a medias dependiera de los archivos que acabas de tocar. git worktree evita todo ese baile. Hace checkout de la rama del hotfix en una segunda carpeta, junto a la de tu feature, y ambas comparten el mismo repositorio. ...

24 de octubre de 2026 路 5 min 路 1061 palabras 路 SpaghettiCoder

Git Reset vs Revert vs Restore: C贸mo Deshacer Cambios

Ejecuta git reset --hard sobre un commit que tu equipo ya baj贸 y acabas de dejar tu historial en desacuerdo con el suyo. Ejecuta git revert sobre un typo que no has subido y a帽ades un commit innecesario al log. Git tiene cuatro comandos para deshacer cambios, restore, reset, commit --amend y revert, y no son intercambiables. Elige el equivocado y el resultado es que no pasa nada, o pasa mucho m谩s de lo que quer铆as. ...

3 de octubre de 2026 路 7 min 路 1368 palabras 路 SpaghettiCoder

Git Bisect: C贸mo Encontrar el Commit que Rompi贸 tu C贸digo

La suite de pruebas lleva tres semanas en verde. Hoy npm test falla en una aserci贸n que no tiene nada que ver con lo que acabas de cambiar, y git log v1.4.0..HEAD muestra 340 commits de cuatro personas desde la 煤ltima release que alguien confirm贸 que funcionaba. Leer cada diff te cuesta un d铆a entero. Hacer checkout de commits al azar es m谩s r谩pido, pero sigue sin ser un plan. ...

22 de septiembre de 2026 路 6 min 路 1211 palabras 路 SpaghettiCoder

Git Rebase vs Merge: diferencias y cu谩ndo usarlos

Haces pull del 煤ltimo main y Git se detiene con CONFLICT (content): Merge conflict in checkout.js. Resuelves el conflicto y el log muestra ahora un commit llamado Merge branch 'main' into feature/checkout, sentado encima de los tres commits que en realidad escribiste t煤. Cuatro commits, un solo cambio real. Un compa帽ero que lea ese historial el mes que viene no puede saber cu谩l es cu谩l. git merge y git rebase responden a la misma pregunta: c贸mo pongo mi rama al d铆a con los cambios hechos en otro sitio. Dejan rastros muy distintos, y elegir el equivocado en una rama compartida causa da帽o real. ...

13 de septiembre de 2026 路 8 min 路 1669 palabras 路 SpaghettiCoder