ideally i want the contents in the repo to be changed before i run git checkout -f not changed in the live copy after
The closest is a filter content driver which will replace the value at the git checkout
.
(from Scott Schacon‘s Pro Git book page on Git Attributes: section “Keyword Expansion”)
So in your case: a smudge filter, declared in a .gitattributes
file.
See “Can git automatically switch between spaces and tabs?“, except you would use a sed to replace local to live (as in this example)