@ekaitz_zarraga @cnx
Just to be clear: My way of handling long lived feature branches is not dictated by Git. I worked like this even before I started using CVS, when we were creating tarballs with patch level versions and exchanging diffs between them by modem.
Got just made rewriting and reordering history a lot easier.
I want all my commits to pass all tests, I want a linear history and don't ever use merges, so that bisecting always gives the smallest possible change to look at.
I cannot imagine how that would ever work using non-collapsed squash! or fixup! commits.