&quot;git rebase -i&quot; is essentially how the entire Linux kernel process works - and IMO it works pretty beautifully. The only real downside I&#x27;ve seen is that it can lead to developers submitting code which breaks bisection due to not testing each individual rebased commit - in the kernel, this is somewhat alleviated by the Intel 0day bot which gives us automated build failure feedback, but it&#x27;s still an issue. The benefits of a nice clean changelog though should not be underestimated.