Pregunta ¿Cómo eliminar archivos locales (sin seguimiento) del árbol de trabajo actual de Git?


¿Cómo se eliminan los archivos locales sin seguimiento de su árbol de trabajo actual?


5776
2017-09-14 09:06


origen


Respuestas:


Según la documentación de Git git clean

Eliminar archivos sin seguimiento del árbol de trabajo


El paso 1 es mostrar qué se eliminará al usar -n opción:

git clean -n

Paso limpio - cuidado: esto eliminará los archivos:

git clean -f
  • Para eliminar directorios, ejecuta git clean -f -d o git clean -fd
  • Para eliminar archivos ignorados, ejecuta git clean -f -X o git clean -fX
  • Para eliminar archivos ignorados y no ignorados, ejecute git clean -f -x o git clean -fx

Nota la diferencia de caso en el X para los dos últimos comandos.

Si clean.requireForce está configurado como "verdadero" (el valor predeterminado) en su configuración, es necesario especificar -f de lo contrario, nada sucederá realmente.

Nuevamente vea el git-clean documentos para más información.

Opciones

-F

--fuerza

Si la variable de configuración de Git clean.requireForce no está configurada como falsa, git clean rechazará la ejecución a menos que se le dé -f, -n o -i.

-X

No use las reglas de ignorar estándar leídas desde .gitignore (por directorio) y $ DIR_ITR / info / exclude, pero aún use las reglas de ignorar que se dan con las opciones -e. Esto permite eliminar todos los archivos sin seguimiento, incluidos los productos de compilación. Esto se puede usar (posiblemente junto con el reinicio de git) para crear un directorio de trabajo prístino para probar una compilación limpia.

-X

Elimine solo los archivos ignorados por Git. Esto puede ser útil para reconstruir todo desde cero, pero mantener archivos creados manualmente.

-norte

--dry-run

En realidad, no elimine nada, solo muestre lo que se haría.

-re

Elimine los directorios sin seguimiento además de los archivos sin seguimiento. Si un directorio no rastreado es administrado por un repositorio de Git diferente, no se elimina de forma predeterminada. Use la opción -f dos veces si realmente desea eliminar dicho directorio.


7589
2018-05-26 20:59



Utilizar git clean -f -d asegurarse de directorios también se eliminan.

A continuación, puede verificar si sus archivos realmente se han ido con git status.


813
2017-12-30 20:12



Me sorprende que nadie haya mencionado esto antes:

git clean -i

Eso significa interactivo y obtendrá una visión general rápida de lo que se va a eliminar, ofreciéndole la posibilidad de incluir / excluir los archivos afectados. En general, aún más rápido que ejecutar el mandato --dry-run antes de la verdadera limpieza.

Tendrás que tirar en un -d si también quieres ocuparte de las carpetas vacías. Al final, es un buen alias:

git iclean

Una vez dicho esto, la mano extra de comandos interactivos puede ser agotador para los usuarios experimentados. En estos días solo uso el ya mencionado git clean -fd 


396
2017-09-14 09:09



git-clean - Eliminar archivos sin seguimiento del árbol de trabajo


387
2018-01-25 12:24



Si el directorio no rastreado es un repositorio de git propio (por ejemplo, un submódulo), debe usar -f dos veces:

git clean -d -f -f


199
2018-06-03 12:16



Manera simple de eliminar archivos sin seguimiento

Para eliminar todos los archivos sin seguimiento, The simple   camino es agregar todos ellos primero y restablecer el repositoriocomo a continuación

git add --all
git reset --hard HEAD


143
2018-01-11 00:41



me gusta git stash save -u porque puedes deshacerlos a todos con git stash pop.

EDITAR: También encontré una forma de mostrar el archivo sin seguimiento en un alijo (por ej. git show [email protected]{0}^3) https://stackoverflow.com/a/12681856/338986


117
2017-11-25 14:16



Esto es lo que siempre uso:

git clean -fdx

Para un proyecto muy grande es posible que desee ejecutarlo un par de veces.


92
2017-09-14 09:08



git-clean es lo que estás buscando. Se usa para eliminar archivos sin seguimiento del árbol de trabajo.


83
2017-09-24 06:28



Si es necesario para eliminar archivos sin seguimiento de un subdirectorio particular,

git clean -f {dir_path}

Y una forma combinada de eliminar directorios / archivos no rastreados y archivos ignorados.

git clean -fxd {dir_path}

después de esto, habrá modificado los archivos solo en git status.


71
2018-01-22 06:33



git clean -fd elimina el directorio

git clean -fX elimina archivos ignorados

git clean -fx elimina archivos ignorados y no ignorados

se puede utilizar todas las opciones anteriores en combinación como

git clean -fdXx 

Revisa el manual de git para más ayuda


47
2017-07-20 16:42