For some reason lately, every time I pull and get a merge conflict, running git mergetool reports \"No files need merging\":
$ git pull
First, r
Merge tools are better at resolving conflicts than stock git. It can't be too opinionated. For example Beyond Compare is syntax aware and will do a lot for you. If you have it configured right, you can just compile and run your solution to test. If it's all good, then just git add -A and git rebase --continue. What you are experiencing is normal. Double check your "trust mergetool exit code" setting:
git config --global mergetool.trustExitCode true
Note: the -A option in git add will stage all changes including deletions and new, untracked files.