On Mon, Sep 23, 2024, at 21:13, Kristoffer Haugsbakk wrote: > On Mon, Sep 23, 2024, at 21:05, Eric Sunshine wrote: >> [...] >> >> An interdiff is just a plain diff. If you have branch (or tag) "v1" >> which is the original version of a patch series, and "v2" which is the >> reroll of the series, then interdiff is simply: >> >> git diff v1 v2 >> >> Thus, it shows the difference between the final state of the code at >> v1 and the state at v2. Interdiffs are easy to read because they are >> just diffs. However, because they are only showing differences in file >> content, they don't show changes to commit messages or new or removed >> or reordered patches in a series. >> >> A range-diff is a diff-of-diffs. It is very, very roughly similar to this: >> >> git format-patch -o v1-patches <common-base>..v1 >> git format-patch -o v2-patches <common-base>..v2 >> some-diff-dir-command v1-patches v2-patches >> >> It shows the diff of the patches themselves, including changes to >> commit messages and changes to changes, as well as inserted and >> removed and reordered patches. >> >> Range-diffs tend to be a good deal more difficult to read (at least at >> first) but help show the evolution of the _patch series_ itself >> between versions, whereas interdiffs show only the evolution of the >> _code_ between versions. As a reviewer, if you're primarily interested >> in how the code evolved, then interdiffs are much more easily >> digested, but most reviewers are also interested in the holistic >> aspects of a patch series for which range-diffs are more helpful. I >> periodically include both range-diff and interdiffs in my rerolls. > > Thanks for that. I love when a good range-diff falls out of a > reroll—and I love the tool—but of course that can’t be expected out of > every reroll. I guess I shouldn’t be surprised. But interdiff turned out to be really useful. Minor rerolls are really easy to read. Such a pleasure to get a quick sanity check before sending out a new round. And then I also get to use range-diff at the same time—the cherry on top. -- Kristoffer Haugsbakk