And If `jj absorb` gets it wrong, you can run `jj undo`.
This is such a killer feature to me. I'm not scared to start potentially gnarly rebases anymore because I can painlessly undo.
yeah, i regularly try absorb then undo when it moves it to a commit from 7 years ago, then manually squash where appropriate
Yes. With "jj undo", I'm not scared to do anything. The brief time I had to go back to using vanilla "git", I didn't enjoy being extra cautious.
Using a version control tool shouldn't require much self discipline.