Good, so that you deviate for persistent push-push, and you have reasons not to want to pull the latest update from the remote. I think you need to separate your changes.
So, let's create a branch at the common point HEAD ~ n in your case HEAD ~ 1:
git branch myfeat HEAD~1
Then drag forward:
git checkout myfeat
git merge master
Now the new branch has a common point, so just:
git push origin myfeat
:
\
\
/ . , , , .