took me a long time to figure it out..
There's a cherry-pick
command in git which is perfect for my situation.
Send a pull request on GitHub for only latest commit
basically,
git checkout -b MyWork_for_pull_request upstream/master (make branch off upstream/master not origin/master)
git cherry-pick `sha-of-MyWork-branch's-commit` (pick out commits I want to contribute)
git push mygithub_fork MyWork_for_pull_request
and press pull request
in the github page.