Estaba intentando agregar un logging de errores a mi file .gitignore, y en algún momento leí que tenía que destrabar específicamente el file después de agregarlo a .gitignore. De alguna manera, terminé usando esto para hacerlo:
git update-index --assume-unchanged Logs/Err.log
Todo se veía bien, hasta que fui a cambiar a mi twig de desarrollo para fusionarme. No puedo cambiar las twigs. Obtuve el siguiente error:
Sus cambios locales a los siguientes files se sobrescribirán con el pago y envío: Logs / Err.log
Sin embargo, cuando ejecuto un git status --s
desde mi sucursal actual, obtengo "nada que confirmar, limpieza del directory de trabajo"
Lo arruiné en alguna parte. ¿Cómo puedo "realmente" ignorar ese logging de errores? ¿Cómo puedo volver a mi command anterior sin actualizar el índice?
Basado en mi propia experiencia, hacer un git update-index --assume-unchanged
solo funciona en la twig en la que lo ejecutas. En realidad, no cambia el aspecto del índice subyacente, solo lo enmascara para las operaciones que se producen en esa twig. Entonces, cuando cambias de twig, Git todavía "ve" el file sucio. Si quiere cambiar de twig, puede intentar lo siguiente:
git stash
o
git reset --hard HEAD
Por supuesto, primero debe deshacer el update-index
:
git update-index --no-assume-unchanged Logs/Err.log
No estoy seguro de que esta es la respuesta "correcta", pero así es como lo resolví (útil que solo era un logging de errores que no era muy importante …)
git update-index --add Logs/Err.log
Se ve bien Puedo agregar Err.log ahora y recogerá los cambios, por lo que la twig lo rastrea nuevamente. Eliminaré el file, luego agregaré a .gitignore nuevamente, y todo estará bien.
Moral:
update-index
)