This is pretty funny, me giving git tips. But anyway ...
I have forked the book reposistory on git hub and have a local repository. I've set up the mdipierro repository as a remote called upstream.
I've made a bit of a mess of it and kept getting commits in my pull requests that I didn't want. Then I stumbled across a stackoverflow tip which has made my git experience much smoother. This might help others. It lets you cherry pick the commits you want and leave behind anything else (or you can follow these steps before making changes).
When wanting to make a change called "CHANGE1" do this (which works with a branch called CHANGE1)
1. git checkout -b CHANGE1 upstream/master
2. ... Make changes or cherry pick from another local branch. commit if necessary
3. git push origin CHANGE1
and now go the github website, change to the new branch and do a pull request. GitHub even has a "delete branch" button after your pull request is merged.