I wrote:
It doesn't work, I'm afraid. Because of the
implicit rebase on push,
usually subsequent changesets have a different parent. So when you
diff between the two branches, you get all of the intervening commits
which were merged to the master.
I was hoping that someone was going to say "you're wrong, making those
diffs is easy, here's how." But I take it by the silence that I'm not
wrong, and it really is hard.
Also, I'm concluding based on Roan's objections that I'm going to have
a hard time convincing people to stop amending their commits. So I
wrote this script that provides changeset diffs for reviewers:
http://tstarling.com/gerrit-differ.php
It fetches both commits from a local mirror into a temporary branch,
rebases the branches to a common ancestor, and then diffs them.
-- Tim Starling