What I mean is:
The only option I can think of is a bash function or script to run the commands in series. My workflow would look like this (since you don't care about commit message):
git commit -a --allow-empty-message -m '' git pull --rebase git push
For me, this would capture probably 80% (SWAG) of my workflow. The
git pull --rebase is the only step likely to fail. It will fail if there are any conflicts, but leave you in a position to correct then, then continue the rebase with
git rebase --continue. From here, you would then
git push to complete the workflow.
You might also look into GitHub's own Git client, it's quite simple and integrates well. However, it won't give you the "one click operation" you are searching for. https://desktop.github.com/