This was a feature of ReviewBoard as well. The history of code review changes was maintained by the tool separately from commit history.
It took me a while to get a workflow that actually works with Gerrit, and I occasionally think of trying to do some kind of autosquash so I can have successive commits locally. In practice I just use --amend all the time.
Careful use of setting upstream and of course pull=rebase makes keeping up with trunk manageable.
Re:Two Years of Squash Merge (2019)
by piotrkaminski on Saturday May 01, 2021 @08:43AM
(#27005823)
And as it happens, Reviewable also deals with this perfectly fine. In fact, it appears that most any code review tool save GitHub is perfectly all right with amend/force-push...
You can also use git-range-diff[1].
gerrit has solved this issue for years by showing the diffs between each successive revision of a patch.
e.g. look here the files at different origin patchsets : https://codereview.qt-project.org/c/qt/qtwayland/+/321246/3....