This was my problem with JJ as well.
I don't want everything in between to be versioned. I'm not even sure, every intermediary state between a commit is relevant or useful.
The one thing I do like about git’s staging area is that it’s truly useful for reviewing a bunch of changes (bulk actions or automated tools). Go over the change chunk by chunk and stage what matters (magit makes that extremely quick.
That could be probably done by jj. But the git’s way is already fine for me.
Yes, jj does make this very nice and easy. It’s the same idea as git, except that “the index” is just another anonymous change, not a distinct feature.
That’s a feature of jj’s integration with Piper, and is not relevant outside of Google, as neither Piper nor that jj integration is available to anyone else.
I felt the same for a while after switching to jj. I think using the word "commit" in jj is creating a lot of confusing. The snapshotting is closer to auto-save in your favorite editor. In does not change your ability to version and save your work. It's just a savety net for quick undo