mac - git repository
git update-index--assume-unchanged devuelve "fatal no se puede marcar el archivo" (12)
Estoy teniendo el mismo problema que este post - git update-index --assume-unchanged devuelve un error, pero no entiendo la respuesta marcada como correcta (no veo que explique cómo solucionar la situación)
Lo hago y obtengo este error:
$ git update-index --assume-unchanged web.config
fatal: Unable to mark file web.config
- el archivo se agrega al repositorio
- NO está en .git / info / exclude
- NO está en .gitignore (fue, pero lo saqué, luego forzó a web.config a agregarse usando git add -f web.config, commited y presioné esos cambios en el repositorio)
- cuando hago git ls-files -o NO está allí
Entonces, ¿qué puedo hacer para solucionarlo?
Asegúrate de que el archivo se haya agregado a git repo, si no agregas el archivo en git repo y luego intentas que funcione.
Asegúrate de que hayas registrado "web.config".
Si no es así, recibirá este mensaje de error.
En mi caso, el árbol que estaba marcando era un directorio, y no un archivo como en tu caso, y me faltaba la barra diagonal después de su nombre.
Incorrecto -
git update-index --assume-unchanged directory-name
Correcto -
git update-index --assume-unchanged directory-name/
Tenga en cuenta la barra inclinada (/) al final.
Estaba teniendo el mismo problema en una Mac. La sensibilidad a mayúsculas y minúsculas no era un problema para mí, el problema era que primero debía reiniciar mi git:
Problema:
git update-index --assume-unchanged index.php
fatal: Unable to mark file index.php
Solución:
git reset HEAD
Unstaged changes after reset:
M index.php
git update-index --assume-unchanged index.php
Estaba teniendo el mismo problema que usted, y había seguido los mismos cuatro pasos que indicó anteriormente, y tuve los mismos resultados. Esto incluía el hecho de que mi archivo estaba listado al ejecutar git ls-files -o
. Sin embargo, en mi caso, también intenté ejecutar git update-index --assume-unchanged
contra un archivo que no figuraba en la lista al ejecutar ls-files -o
, y todavía recibí el mismo error " fatal: Unable to mark file
".
Pensé que tal vez era un error, y descargué la última versión de git, pero esto no ayudó.
¡Lo que finalmente me di cuenta es que este comando distingue entre mayúsculas y minúsculas! Esto incluye la ruta completa y el nombre del archivo. Después de actualizar la ruta al directorio para que se especifique la ruta completa con la cubierta adecuada, el comando se ejecutó correctamente.
Tenga en cuenta que esto fue con Git para Windows, por lo que sus resultados pueden variar con otras plataformas.
Mi problema fue que probé el comando con un * comodín suponiendo que sería recursivo, pero no fue así.
Entonces lo que hice fue
$ git reset HEAD
Unstaged changes after reset:
M .gradle/1.9/taskArtifacts/cache.properties.lock
M .gradle/1.9/taskArtifacts/fileHashes.bin
M .gradle/1.9/taskArtifacts/fileSnapshots.bin
M .gradle/1.9/taskArtifacts/outputFileStates.bin
M .gradle/1.9/taskArtifacts/taskArtifacts.bin
ejecutando
$ git update-index --assume-unchanged .gradle/1.9/taskArtifacts/*
funcionó para mí entonces y no resultó en OP y mi problema.
Para todos los visitantes futuros. Ninguno de los anteriores resolvió mi problema. Lo que me di cuenta es que el archivo .gitignore
debe colocarse en el directorio correcto. En mi caso, una vez que moví .gitignore
al directorio raíz de la aplicación, el problema se resolvió.
Si su ruta tiene espacios, puede obtener este error incluso si tiene la carcasa correcta.
Esto produce el error "fatal":
git update-index --assume-unchanged code/Solution Files/WebEssentials-Settings-json
Para solucionarlo, simplemente agregue comillas alrededor de la ruta.
git update-index --assume-unchanged "code/Solution Files/WebEssentials-Settings-json"
Tal vez sea útil para alguien. Tuve el mismo problema y no hubo ningún problema de sintaxis, ningún nombre con espacios, ningún problema de ruta, y el comando de restauración de git no funcionó. Me estaba comprometiendo desde una carpeta dentro de apache www y el servicio apache se detuvo. Comencé de nuevo el servicio apache y el error desapareció
Tuve este problema cuando estaba tratando de destrabar archivos * .orig.
Esto es lo que hice para destrabarlos:
$git reset -- *.orig
si eso no funciona:
$git clean -fd
fatal: no se puede marcar el archivo Localización / el-GR.js
Lo que puedes hacer es:
- Vaya a la ruta correcta donde el archivo está presente en su local (en GITBASH)
- Actualice el índice
$git update-index --assume-unchanged <file name>
¡Esto me ayudó! :)
--assume-unchanged
se trata de sistemas lentos de archivos, y los usuarios prometen que Git no necesita verificar este archivo, ya que Git puede asumir que no ha cambiado. ¡Pero algunos comandos aún controlan y producen "sorpresa"!
No usar en archivos que cambian.
Perdón por ser la portadora de esa noticia (tengo un parche en proceso para cambiar esa documentación).