In my case I have a remote tracking branch (tracking my upstream's master ) so if I do any changes from that tracking branch and do a git push (I have set the git config --global push.default matching) it says "Everything up-to-date" and my changes are not getting pushed.
I have to use the following command to push the changes directly to my upstream master
git push upstream HEAD:master
If I am missing anything please let me know