Oh yeah I forgot HEAD Is a ref, whoops. Duh! (My git is getting rusty at this point...)
jj still ends up keeping information in here that the reflog doesnt, but you're right that these aren't the strongest points.
jj still ends up keeping information in here that the reflog doesnt, but you're right that these aren't the strongest points.
--update-refs, --no-update-refs
Automatically force-update any branches that point to commits that
are being rebased. Any branches that are checked out in a worktree
are not updated in this way.
If the configuration variable rebase.updateRefs is set, then this
option can be used to override and disable this setting.Yes, this is something, that JJ provides and Git does not.
I think Git will just gain a oplog. You just need to append a commit hash to a list before each command and implement undo as remove item and checkout. The hardest thing will be race conditions, but Git already knows how to be a database.