Deshacer todos los cambios de Git en local ejecutando 1 línea de comando
En ocasiones estamos probando cosas y nos gustaría poder deshacer esos cambios de Git en local rápidamente. Esto es posible con un par de comandos que podemos enlazar y hacerlo todo en una línea.
Este contenido está restringido.
HAZTE PREMIUM
para difrutar de los audios y vídeos exclusivos.
Es particularmente util si estamos revisando Pull Requests de compañeros y queremos hacer algún cambio para probar lo que sea.
Para deshacer los cambios en local de la rama actual, podemos usar este comando:
git reset HEAD --hard
Y para eliminar los nuevos ficheros (f
) y directorios (d
) creados:
git clean -fd
Pero… ¿no me habías dicho que se podía hacer todo de una? Aquí veo 2 líneas de comandos…
Efectivamente.
Para ejecutar varios comandos en una misma línea podemos usar lo siguiente.
Vamos a poner un ejemplo en el que tenemos 2 comandos: cmd1
y cm2
.
cmd1; cmd2 | Ejecuta el 2º comando siempre |
cmd1 && cmd2 | Ejecuta el 2º comando si el primero tuvo éxito |
cmd1 || cmd2 | Ejecuta el 2º comando si el primero fue fallido |
Por lo que podemos ejecutar esto:
git reset HEAD --hard && git clean -fd
Y ya lo tenemos. Con esta línea de arriba, nos libraremos de todos los cambios de una tacada.
Si quieres ir un poco más allá, podrías incluso crearte un alias en Git.
Por ejemplo algo así:
[alias] res = "!git reset HEAD --hard && git clean -fd"
Entonces, con teclear git res
por terminal, ya te desharía los cambios en local. 💯