On 06.09.16 19:47, john smith wrote:
> I am looking for a way to force smudge filter to run by simulating a
> real life checkout. Let's say I just created a new branch and did not
> modify any files but want to test my new smudge filter. According to
> some answers such as
> it should be possible by running:
> git checkout HEAD --
> but in doesn't work with git 2.9.0. Method suggested in accepted
> answer here
> works but I don't like because it seems fragile. Is there a safe way
> to do what I want to do in Git still today?
It depends what you mean with "safe way".
git checkout, git checkout -f or other combinations will only
overwrite/rewrite the files in the working tree, if, and only if,
git comes to the conclusion that "git add" will do something,
like replace a blob for a file in the index.
(And by running "rm .git/index git will evaluate the "clean" filters,
and the CRLF->LF conversion).
If you want to test a smudge filter, simply remove the file:
mv file /tmp && git checkout file