I'm surprised Reviewable[0] hasn't come up in this discussion. It does a great job of allowing stacked code reviews and even handles rebases nicely; the reviewer sees the diff between commit #1 and commit #1' (prime = after rebase).
CockroachDB[1] has been using it since very early in the project.
CockroachDB[1] has been using it since very early in the project.
[0] https://reviewable.io/
[1] https://github.com/cockroachdb/cockroach