git - ver - limpie el árbol de trabajo del repositorio antes de la desprotección
Los siguientes archivos de árbol de trabajo sin seguimiento se sobrescribirán mediante fusión, pero no me importa (8)
En mi sucursal tenía algunos archivos en .gitignore
En una rama diferente, esos archivos no lo son.
Quiero fusionar la rama diferente en la mía, y no me importa si esos archivos ya no se ignoran o no.
Lamentablemente, entiendo esto:
Los siguientes archivos de árbol de trabajo sin seguimiento se sobrescribirán mediante fusión
¿Cómo modificaría mi comando de extracción para sobrescribir esos archivos, sin tener que buscar, mover o eliminar esos archivos yo mismo?
Además de la respuesta aceptada, puedes eliminar los archivos si ya no los necesitas especificando el archivo:
git clean -f ''/path/to/file/''
Recuerde ejecutarlo primero con la opción -n si desea ver qué archivos eliminará git clean. Tenga en cuenta que estos archivos serán eliminados. En mi caso, no me importaban de ninguna manera, así que esa era una mejor solución para mí.
El problema es que no está rastreando los archivos localmente, pero los archivos idénticos se rastrean de forma remota, por lo que para "tirar" su sistema se vería obligado a sobrescribir los archivos locales que no están controlados por la versión.
Prueba correr
git add *
git stash
git pull
Esto rastreará todos los archivos, eliminará todos sus cambios locales en esos archivos y luego obtendrá los archivos del servidor.
Los únicos comandos que funcionaron para mí fueron:
git fetch --all
git reset --hard origin/{{your branch name}}
Puede intentar el comando para borrar los archivos no rastreados del local
git 2.11 y más nuevo
git clean -d -f .
git más viejo
git clean -d -f ""
donde -d puede reemplazarse con lo siguiente:
-x significa que los archivos ignorados también se eliminan, así como los archivos desconocidos para git.
-d significa eliminar directorios no rastreados además de archivos no rastreados.
-f se requiere para forzarlo a correr.
aquí está el link que puede ser útil también.
Puedes probar ese comando
git clean -df
Si considera usar la bandera -f
, primero podría ejecutarla como una ejecución en seco. Solo que sabes por adelantado qué tipo de situación interesante terminarás después ;-P
-n
--dry-run
Don’t actually remove anything, just show what would be done.
Si se trata de una operación de una sola vez, puede eliminar todos los archivos sin seguimiento del directorio de trabajo antes de realizar la extracción. Lea ¿Cómo eliminar archivos locales (sin seguimiento) del árbol de trabajo actual de Git? para obtener información sobre cómo eliminar todos los archivos sin seguimiento.
Asegúrese de no eliminar accidentalmente el archivo no rastreado que aún necesita;)
Eliminar todos los archivos sin seguimiento:
git clean -d -fx .