# Jujutsu (jj)

335 Hacker News commenters recommended Jujutsu (jj) and 106 criticized it, November 2025 to November 2026. It was recommended in 13 of 13 months; owners who said how long report a median of 1 years (21 owners). It meets the Hacker Approved badge rule.

**Verdict:** A Git-compatible version control tool that makes rebasing, stacked changes, conflicts and undo far easier; the common gripe is that bookmarks must be moved manually.

## Why people recommend it

- Deferred conflict resolution (6 comments): "jj doesn't force you to resolve the conflicts immediately, so it'll just show that they're conflicted until you decide you want to go fix them." ([source](https://news.ycombinator.com/item?id=46177200)) "jj does not require you to resolve merge conflicts in a timely manner; it simply records the fact that there are conflicts in the file" ([source](https://news.ycombinator.com/item?id=48262768)) "jj allows concentrating on developing while leaving things for vcs alone, as well as solving vcs things (conflicts) at very beginning" ([source](https://news.ycombinator.com/item?id=48262099))
- Many small usability wins (5 comments): "It is just dozens and dozens of small quality of life improvements that culminate in a significantly better overall experience." ([source](https://news.ycombinator.com/item?id=47005962)) "to the extent that you would never bother doing half the things with git that you can do with Jujutsu because it's such a pain" ([source](https://news.ycombinator.com/item?id=47853633)) "jj represents a massive step forward from git in terms of usability, usefulness, and solving problems I actually have" ([source](https://news.ycombinator.com/item?id=47483252))
- Automatic rebasing of descendant commits (3 comments): "This is the post that made jj click for me, and not coincidentally it is about a rebase operation that feels complicated in git but trivial in jj." ([source](https://news.ycombinator.com/item?id=46602149)) "automatic rebasing, i.e. that all descendant commits and bookmarks (branches) are automatically updated when you rewrite a commit" ([source](https://news.ycombinator.com/item?id=46170885)) "The descendant commits (E through J) then get automatically rebased and the feature bookmarks/branches get updated." ([source](https://news.ycombinator.com/item?id=46175139))
- Easy undo, safe for agents (3 comments): "`jj undo` and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered." ([source](https://news.ycombinator.com/item?id=47771815)) "jj undo and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered." ([source](https://news.ycombinator.com/item?id=47764604)) "The ability to undo anything with the one 'jj undo' command is awesome in the agent coding world when it makes a mistake." ([source](https://news.ycombinator.com/item?id=48267497))

## What people warn about

- Bookmarks don't auto-advance (5 comments): "There's one thing that's a bit annoying, the commit is there but the head of the branch hasn't been moved, you have to move it manually" ([source](https://news.ycombinator.com/item?id=47767128)) "bookmarks don't float, unlike git branches, so if your pattern is to produce a lot of commits, you'll want something to keep your jj bookmarks pointing to the top" ([source](https://news.ycombinator.com/item?id=46160253)) "That sounds a bit faffy. With jj you have to fetch, start new space off a bookmark, edit code, commit it, update the bookmark and finally push?" ([source](https://news.ycombinator.com/item?id=47769035))
- jj state lost in Git (2 comments): "Only unfortunate thing with jujutsu is because it is trying to be a git overlay, you lose state that a mercurial clone on another machine would have." ([source](https://news.ycombinator.com/item?id=46608224)) "That inability to push the really useful jj state upstream for pulling from any machine seems like a major pain point in jj right now" ([source](https://news.ycombinator.com/item?id=46849942))
- Tooling still assumes Git (3 comments): "I tried it once co-locating with Git and you definitely can't use both at the same time, even if it can use a `.git` directory." ([source](https://news.ycombinator.com/item?id=46162427)) "hardly worth using more of the precious LLM context with jj instructions when git does the job and is mandatory anyways" ([source](https://news.ycombinator.com/item?id=48274406)) "We are using jj with great success but tools like auto claude are designed around git and git worktrees." ([source](https://news.ycombinator.com/item?id=46846085))

## Alternatives hackers recommend

- [Git](https://hackerapproved.com/p/git.md): 814 recommend
- [Mercurial](https://hackerapproved.com/p/mercurial.md): 121 recommend
- [jj (Jujutsu)](https://hackerapproved.com/p/jj.md): 115 recommend
- [Fossil](https://hackerapproved.com/p/fossil.md): 106 recommend
- [Subversion](https://hackerapproved.com/p/subversion.md): 54 recommend

## Cite as

Hacker Approved, "Jujutsu (jj)", https://hackerapproved.com/p/jujutsu/ (counts from 1,795,640 Hacker News comments, November 2025 to November 2026).
