¿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