When I run
excludesfile = ~/.gitignore_global
It sounds like you might be misunderstanding what "ignore" means to Git. A file name mentioned in
.gitignore means that if a file is untracked, then
git status will not show that file as an untracked file.
Ignoring a file does not do anything when the file is tracked by Git, and has been modified. That is considered a change to your repository, which Git doesn't let you ignore. (After all, you have already told Git that file is important enough to store in your repository, so Git has an obligation to inform you about changes to that file.)
If your tools (Eclipse) is modifying your
.gitignore files, I would suggest you instruct Eclipse to stop doing that.