Git-knife - Edit commit messages, authors, and dates like a spreadsheet

Show HN: Git-knife – edit commit messages, authors, and dates like a spreadsheet

Git-knife is a desktop GUI that lets you edit git commit metadata—messages, author and committer names/emails, and dates—directly in a spreadsheet-like interface. Unlike existing tools that treat dates as immutable, git-knife provides full control, including bulk find-and-replace with regex. It safely rewrites history by shelling out to git and using commit-tree, ensuring file contents never change. With previews, automatic backups, and push warnings, it's perfect for fixing typos, correcting emails, or adjusting timestamps across many commits.

Stab your git history into shape — every commit's message, author, and dates, edited like a table.
  1. NichoPaolucci

    “It never reimplements git — it shells out to the system git CLI and rebuilds commits with git commit-tree, reusing each commit's original tree so file contents are provably never changed.”

    Glad the LLM noted this - I was worried this would reimplement git

  2. lrvick

    Note: This will not work and cannot work on repos that use signed commits from multiple authors.

    Signed git history is immutable, and unsigned git history is a supply chain attack vector.

    That said I could see this being useful for single-author WIP branches doing cleanup before a PR

  3. Defletter

    This is, funnily enough, something I've been periodically searching for for nearly a decade, and even renewed my search yesterday. For those wondering, my use case is a model Parliament (context: https://news.ycombinator.com/item?id=43474850) and deciding on using git to store the laws, with the commits representing the Acts of Parliament themselves. The problem is that we need to guarantee that every commit has the correct metadata: we do not care at all about the conservation of commit hashes. And if we've accidentally missed a law and need to interactively-rebase it into the git history, it should NOT reset all the subsequent commit dates to the current timestamp. Basically, we're wanting to use git as a historical archive. I'm delighted to have found this.

  4. beart

    It looks like the screenshot was an actual photo of someone's monitor. I'm left wondering why print screen wasn't utilized. And for some reason it really makes me not want to touch this project.

  5. iamcoder18

    This is cool, but has anyone ever needed to rewrite commit authors or dates?

  6. unqueued

    I appreciate that it uses git-notes and that is makes backup branches in it's own namespace. I wish it were a bit lighter though.

    Haven't seen mentioned, but you might want to check out https://github.com/mystor/git-revise

  7. mellosouls

    Hmmm, this seems to be making easy something you normally should not do.

  8. vivzkestrel

    - make a drag and drop ui for git rebase

    - i should be able to change order of commits

    - i should be able to change what files went in a previous commit

More from this day

2026-08-11