Post

What if we could actually do better than Git? I have spent the last six months using Jujutsu (jj), and… I think it actually has a shot. I am so excited I also spent the last six months writing >10,000 words about it, so check it out! v5.chriskrycho.com/essays/jj-in...

v5.chriskrycho.comjj init — Sympolymathesy, by Chris KrychoJujutsu (`jj`) is a new version control system from a software developer at Google. It seems promising, so I am giving it a try on a few personal projects.

11 reposts27 likes

(1) What if rebasing and merging didn't suck? What if they were super easy to do, in ways that did not lose your past history? What if changing how you wanted to describe a change was as easy as writing `jj describe`? Spoilers: it is!

(2) What if realizing you should split apart a change you made a few commits ago before pushing it to share with colleagues did not involve mucking with `git rebase --interactive` but instead was as simple as saying `jj split -r <change ID>`? Again: it *is*!

(3) What if you could insert a change in the middle of a branch's history before sharing it with colleagues? `jj new --after <id>` or `jj new --before <id>`, 💥.

(4) But won’t that cause conflicts, and therefore block all progress? NOPE. Jujutsu knows how to keep working even in the face of conflicts. And you can then `jj resolve them` at your leisure. Immediately? Sure. Five changes later? Also fine! Do what works for your team. asciinema.org/a/635483

asciinema.orgRebasing with conflicts in Jujutsu VCSUnlike in Git or other, older, version control systems, Jujutsu treats conflicts as a first-class concept. This gives us more options when working with conflicts that happen when we rebase—includin....