On Wed, Mar 7, 2012 at 6:01 AM, Chad innocentkiller@gmail.com wrote:
git-review helps lower some of these barriers since it automatically rebases against origin/* for you so you get a clean merge on push. Cherry picking's not that hard, and gerrit actually gives you the command from the UI to pull the specific patchset.
Pulling a specific patchset is also made easier by git-review: if you're looking at https://gerrit.wikimedia.org/r/1234 , you can pull that patchset in using git review -d 1234 .
One of the most important habits I can encourage people to get into is using separate local branches for separate features/fixes/etc. If two commits aren't related--they should not be dependent on one another. It makes the review process more difficult when you've got unrelated dependencies since you have to review all of them to submit. This raises the barrier to getting things merged to master.
Yes, this has been a hobby horse of mine too. The git-fu for disentangling unrelated commits so they're no longer based on each other isn't too difficult, but it's much better to get into a habit that avoids the problem in the first place.
Roan