The git history command(lalitm.com)
343 points by turbocon 12 hours ago | 216 comments
tl;dr: Git 2.54 and 2.55 introduced an experimental `git history` command with three subcommands—`fixup`, `reword`, and `split`—that let you amend, rename, or split older commits and automatically rebase all descendant branches atomically. It delivers several ergonomic wins commonly associated with jj (like updating refs across branches without leaving a broken state), though it refuses conflicting operations and doesn't yet support merge commits or first-class conflicts. It's built into core git, so no extra tooling is required.
HN Discussion:
  • Learning git's internals via the pro git book makes everything click into place
  • Rebase isn't actually scary since abort and reset commands provide safety nets
  • Git is a versatile organizational tool worth learning for many non-coding uses
  • The difficulty with rebase is a UI problem that new commands help address
  • ~The new commands lack important features like commit signing or preserving branch history