Hmm, I don't get it:<p>> If you want to have your code reviewed, you first have to branch master, then commit to that branch, then push it remotely, then create a PR.<p>When I want to create a PR, I always create a feature/WIP branch locally and push that. Branches are cheap in Git.<p>I find when the unit of scrutiny is an individual commit, like when you contribute to the Linux kernel, I spend way to much time fabricating nice atomic commits. Like maybe 50%, with 30% actual development time and 20% normal cleanup.<p>The only thing I miss with PRs is the ability to rewrite my branch <i>after</i> showing it. I think it is not supported to do `rebase -i` and then `push --force` to a PR, is it? It would be really useful, especially for the cases where you have multiple commits that cancel each other out (e.g. add debugging output, remove debugging output).