--- title: "Lightning talk: Jujutsu" date: 2024-11-26 --- _This article is also available as a lightning talk: [pdf](./jujutsu_slides.pdf)_ ## What is it? [Jujutsu](https://github.com/martinvonz/jj) is a new version control software (VCS), like git, mercurial, etc. Git is the actual gold standard for VCS, even if its UX could be better. There is a whole ecosystem around git that makes switching to similar projects (eg. mercurial) a daunting task. How does jujutsu plans on making us switch? Jujutsu separates the frontend (what the user interacts with) and the backend (how the information is stored). And the main backend is actually git repositories. There is a native backend being developed but it's not ready for prime time. Sharing the same backend as the most popular VCS, Jujutsu aims to improve on the frontend. ## How does it compare? ### No branch, only revisions Jujutsu understand git commits, but operates at a higher level with revisions. Revisions wrap commits, however as you move revisions around (edit with changes, or rebase), they keep their id. Only their underlying commit id changes. With revision ids being stable, you don't need branches to start working: create a new revision, and start working. You will need to create a branch (or bookmark in jujutsu world) to push your changes, but it can be done at the end. There is no special mode like git's "Detached HEAD", you are always on a revision. You can jump around ## VCS landscape > I was part of the team at Meta that built Sapling for many years. I’m no > longer at Meta and I use jj full time. > > _[Discussion on Lobste.rs](https://lobste.rs/s/rojoz1/jujutsu_jj_git_compatible_vcs#c_foqya4)_