Jujutsu (jj)
Hacker ApprovedRanked 2 of 26 version control systems by recommenders
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.
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.
441 people gave an opinion
- recommend it
- 335
- criticize it
- 106
- approval share
- 76%
Recommended in 13 of 13 months
- November 2025: recommended
- December 2025: recommended
- January 2026: recommended
- February 2026: recommended
- March 2026: recommended
- April 2026: recommended
- May 2026: recommended
- June 2026: recommended
- July 2026: recommended
- August 2026: recommended
- September 2026: recommended
- October 2026: recommended
- November 2026: recommended (month in progress)
Owned for 1 year
Median of the 21 owners who said how long they have had it.
Each square is one year.
Why it carries the badge
- 335 people recommend itNeeds 10 or more, met.
- 3.2 recommenders for every criticNeeds 2 to 1 or better, met.
- Recommended in 13 of 13 monthsNeeds 4 or more, met.
The same three rules apply to every product, and the badge can’t be bought. How the badge works
What people say about it
The reasons people give, with the number of comments that give each one. Open a reason to read what they said.
Why people recommend it
Each mark is one comment
Deferred conflict resolution
“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.”
Comment from 6 Dec 2025 in “Stacked Diffs with git rebase —onto” “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”
Comment from 25 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu” “jj allows concentrating on developing while leaving things for vcs alone, as well as solving vcs things (conflicts) at very beginning”
Comment from 24 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu” - Comment from 8 Apr 2026 in “The Git Commands I Run Before Reading Any Code”
- Comment from 22 Mar 2026 in “A Coherent Vision for the Future of Version Control”
- Comment from 23 Mar 2026 in “A Coherent Vision for the Future of Version Control”
Many small usability wins
“It is just dozens and dozens of small quality of life improvements that culminate in a significantly better overall experience.”
Comment from 13 Feb 2026 in “Evolving Git for the Next Decade” “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”
Comment from 21 Apr 2026 in “Jujutsu Megamerges for Fun and Profit” “jj represents a massive step forward from git in terms of usability, usefulness, and solving problems I actually have”
Comment from 22 Mar 2026 in “A Coherent Vision for the Future of Version Control” - Comment from 2 Nov 2025 on Hacker News
- Comment from 8 Dec 2025 in “Jujutsu worktrees are convenient (2024)”
Automatic rebasing of descendant commits
“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.”
Comment from 13 Jan 2026 in “Git Rebase for the Terrified” “automatic rebasing, i.e. that all descendant commits and bookmarks (branches) are automatically updated when you rewrite a commit”
Comment from 6 Dec 2025 in “Stacked Diffs with git rebase —onto” “The descendant commits (E through J) then get automatically rebased and the feature bookmarks/branches get updated.”
Comment from 6 Dec 2025 in “Stacked Diffs with git rebase —onto” Easy undo, safe for agents
“`jj undo` and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered.”
Comment from 14 Apr 2026 in “What is jj and why should I care?” “jj undo and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered.”
Comment from 14 Apr 2026 in “What is jj and why should I care?” “The ability to undo anything with the one 'jj undo' command is awesome in the agent coding world when it makes a mistake.”
Comment from 25 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu”
What people warn about
Each mark is one comment
Bookmarks don't auto-advance
“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”
Comment from 14 Apr 2026 in “What is jj and why should I care?” “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”
Comment from 5 Dec 2025 in “Stacked Diffs with git rebase —onto” “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?”
Comment from 14 Apr 2026 in “What is jj and why should I care?” - Comment from 25 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu”
- Comment from 25 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu”
jj state lost in Git
“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.”
Comment from 13 Jan 2026 in “Git Rebase for the Terrified” “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”
Comment from 1 Feb 2026 in “VisualJJ – Jujutsu in Visual Studio Code” Tooling still assumes Git
“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.”
Comment from 5 Dec 2025 in “Stacked Diffs with git rebase —onto” “hardly worth using more of the precious LLM context with jj instructions when git does the job and is mandatory anyways”
Comment from 26 May 2026 in “Defeating Git Rigour Fatigue with Jujutsu” “We are using jj with great success but tools like auto claude are designed around git and git worktrees.”
Comment from 1 Feb 2026 in “VisualJJ – Jujutsu in Visual Studio Code”
Other version control systems people recommend
The four most recommended other version control systems, with the same counts for each, so you can compare like for like. The tick on each bar marks the 2 to 1 line the badge needs.
| Product | Recommend | Criticize | Approval | Months | Owned | Badge |
|---|---|---|---|---|---|---|
| Git | 814 | 503 | 62% | 13 | 15 yrs42 owners | — |
| Jujutsu (jj) | 335 | 106 | 76% | 13 | 1 yr21 owners | Approved |
| Mercurial | 121 | 43 | 74% | 12 | 19 yrs7 owners | Approved |
| jj (Jujutsu) | 115 | 37 | 76% | 12 | 1 yr7 owners | Approved |
| Fossil | 106 | 19 | 85% | 13 | 17 yrs7 owners | Approved |
What people said
40 of the 798 comments that mention it, newest first. Each links to the original comment.
“Everything I do is basically the same as with branches, just that I get randomly generated tip names rather than naming them myself”
“one advantage of using the same storage on disk as Git and exposing it in the same way is that git-based tools still work”
“One of the other features I use quite heavily is that, in JJ, you can essentially check out multiple branches at the same time”
“hardly worth using more of the precious LLM context with jj instructions when git does the job and is mandatory anyways”
“The ability to undo anything with the one 'jj undo' command is awesome in the agent coding world when it makes a mistake.”
“this fact does not diminish the usefulness of Jujutsu. There are valid use cases for the rebase and stacking operations”
“Only difference my teammates see is that my commits are much tidier and scoped in a way that's easy to review and think about.”
“it's easier if you give up choosing the name of your branch, and instead rely on finding things by description or your workspace name.”
“can't fathom for the life of me why i have to run another command that updates the branch to the next commit”
“Having to list all the bookmarks you would list to auto-advance in your jj config.toml is a hassle and easy to forget.”
“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”
“jj allows concentrating on developing while leaving things for vcs alone, as well as solving vcs things (conflicts) at very beginning”
“Almost everyone I've shown jj to at work has converted because it solves the same problems for them as it did for myself.”
“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”
“Turns out these two differences combined with tracking change identity over multiple snapshots allow for ergonomic workflows”
“Probably my favourite thing that has really changed my workflow is being able to write empty commits in advance then just switch between them.”
“Great tool. Roughly this workflow is how I convinced a few friends to finally loosen their death grip on git and try something new.”
“`jj undo` and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered.”
“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?”
“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”
“the working tree being a commit has wide ranging implications as all the commands that work with commits start working with the working tree by default”
“jj undo and the jj architecture generally make it difficult for agents to screw something up in a way that cannot be recovered.”
“JJ can save conflict related state with the change so that you don't need to resolve a conflict in the middle of a stack of changes”
“Deferred conflict resolution is amazing in jj because I may never return to some of the branches that are in conflict”
“already supports 3-way merges and history-preserving rebases, and does so with data structures that are trivially representable in a standard git repo”
“jj represents a massive step forward from git in terms of usability, usefulness, and solving problems I actually have”
“it turns out to be really useful not to be stuck inside an aberrant state while conflicts are in the process of being resolved”
“It is just dozens and dozens of small quality of life improvements that culminate in a significantly better overall experience.”
“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”
“We are using jj with great success but tools like auto claude are designed around git and git worktrees.”
“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.”
“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.”
“it's mostly a bunch of small things that jj does nicer, that cumulatively add up to a significantly nicer experience”
“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.”
“The descendant commits (E through J) then get automatically rebased and the feature bookmarks/branches get updated.”
“I think jj is generally more useful for people like me who often have lots of independent and dependent work in progress.”
“automatic rebasing, i.e. that all descendant commits and bookmarks (branches) are automatically updated when you rewrite a commit”
“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.”
“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”
“jj's interaction model makes these things simple, straightforward, and obvious in the overwhelming majority of cases.”
Counts come from 1,795,640 Hacker News comments, November 2025 to November 2026. How we count. Report a mistake.