git: ¿cómo puedo eliminar este file para siempre?

Tengo un file que vuelve a aparecer en mi repository git local, del cual estoy tratando de deshacerme, de una vez por todas.

Tenga en count que este file nunca estuvo en mi .gitignore

La situación es esta:

Hago:

git status On branch master Your branch is up-to-date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) src/com/mygfx/gui/face/MuscleSliderX.java nothing added to commit but untracked files present (use "git add" to track) 

Entonces lo hago:

 git rm ./src/com/mygfx/gui/face/MuscleSliderX.java git add -A git commit -m "Delete MuscleSliderX.java" git push origin master git status On branch master nothing to commit, working tree clean 

la próxima vez (otro día) empiezo el día con un

 git status On branch master Your branch is up-to-date with 'origin/master'. Untracked files: (use "git add <file>..." to include in what will be committed) src/com/mygfx/gui/face/MuscleSliderX.java nothing added to commit but untracked files present (use "git add" to track) 

¿Cómo puedo eliminar este file y hacer que git lo olvide en adelante?

untracked significa que git no sabe nada al respecto, pero algo lo ha colocado en su tree de trabajo. Eso significa algunas cosas:

En primer lugar, significa que su git commit -m "Delete MuscleSliderX.java" debería estar saliéndose ("nothing to commit"). Estoy asumiendo una versión de git razonablemente moderna; No sé si siempre mostró este error; pero independientemente, si la salida de status que ha informado es precisa, entonces el único command que está haciendo algo es el git rm , y en realidad solo una simple rm sería suficiente ya que el file no se organiza de todos modos.

Segundo, significa que algo fuera de Git sigue recreando ese file. No tengo idea de qué, pero jugar con git no lo arreglará. No es necesario que Git olvide el file de una vez por todas: olvida todo lo relacionado con el file y, en consecuencia, cuando alguien o alguien más coloca el file allí, no sabe por qué no le dice que está allí.

Si no quiere que le cuente sobre el file, incluso cuando algo más lo coloque en su tree de trabajo, entonces debe ingresar una input en .gitignore . Pero eso aún no evitará que el file se coloque en su tree de trabajo. Si desea que el file deje de aparecer, debe averiguar qué lo está creando.

Prueba a utilizar git clean -f para recuperar files sin seguimiento