Kevin Daudt <me@xxxxxxxxx> writes: > Often people advise tricks like `git update-index --assume-unchanges > <file>`, but this does not work as expected. It's merely a promise to > git that this file does not change (and hence, git will not check if > this file has changed when doing git status), but command that try to > change this file will abort saying that the file has changed. It actually is even worse. As the user promised Git that the <file> will not be modified and will be kept the same as the version in the index, Git reserves the right to _overwrite_ it with the version in the index anytime when it is convenient to do so, removing whatever local change the user had despite the promise to Git. The "abort saying that the file has changed" is merely various codepaths in the current implementation trying to be extra nice.