Useful for files like configuration file where you do not want to commit the changes. However, there is a confusion between skip-worktree and assume-unchanged. After reading from FallenGameR post 1, skip-worktree is for developer who want to make changes to the file but do not want git to track it. As the name suggest, assume-unchanged will assume the developer will not make changes to the file so it always assume the file unchanged. Use assume-unchanged only at the situation where you would want to speed up the git so that it does not monitor too many files.
git update-index --skip-worktree <file>
git update-index --no-skip-worktree <file>
git update-index --assume-unchanged <file>
git update-index --no-assume-unchanged <file>
To check which files you have pause the tracking, use this:
git ls-files -v | grep -e "^[hsmrck]"