Mantén tu directorio git limpio con `git clean` y `git trash`

¿Tienes tu directorio git lleno de archivos sin seguimiento y te empieza a molestar a la hora de elegir los cambios para el commit? Bueno, tengo dos consejos para ti:

git clean

Este es un comando incorporado para limpiar los archivos sin seguimiento. Ten cuidado con éste, ¡borra los archivos permanentemente!

¡Siempre añade las opciones -n o --dry-run para ver el daño que harás! (fuente)

  • Si sólo limpias los archivos no rastreados, ejecuta git clean -f
  • Si quieres eliminar también los directorios, ejecuta git clean -f -d
  • Si sólo quieres eliminar los archivos ignorados, ejecute git clean -f -X
  • Si desea eliminar tanto los archivos ignorados como los no ignorados, ejecute git clean -f -x

Note, que hay -f / --force opción en cada ejemplo, esto es debido a la configuración por defecto de git: Si la variable de configuración de git clean.requireForce no se establece en false, git clean se negará a ejecutarse a menos que se le dé -f o -n.

git trash

Alternativa suave a git clean. Mueve todos los archivos no escaneados al directorio .trash para su posterior revisión.

Para que este comando funcione es necesario añadir el directorio .trash al local o global .gitignore. Si no lo haces git trash intentará eliminar también la carpeta .trash.

echo ".trash" >> .gitignore

Ahora añade el acceso directo trash git a tu lista global de alias:

git config --global alias.trash '!mkdir -p .trash && git ls-files --others --exclude-standard | xargs mv -f -t .trash'

Y ya está. Ahora puedes ejecutar git trash en la raíz de tu repositorio git y todos los archivos que no estén en fase se moverán al subdirectorio .trash.

Consejos relacionados:

Elimina todas tus ramas git locales pero mantén el master

Deja una respuesta

Tu dirección de correo electrónico no será publicada.