Jujutsu is essentially an alternative front-end or “porcelain” to git, both magnificiently simplified and powerful.
I tried it after using Emacs Magit for about six or seven years, and jujutsu is really easier to use than git and useful if one wants a tidy public history of changes (with “tidy” and “public” as Linus Torvalds recommends). Plus it is fully compatible to git as backend - other contributors will not even note you are using it.
other contributors will not even note you are using it.
Ooooh, that’s interesting.
Technically true - but it looks like
jj
does a lot of history re-writing which would require a lot of care to be taken when working on a shared codebase.The page on remotes has some cautions in it.
We need the --allow-backwards flag to set the trunk branch to the previous commit because it is a dangerous operation: if we had pushed trunk, things would get weird when we try and push now. We’ve kept it all local, so there’s no issues with doing this.
Hrm… It looks interesting but it seems too dedicated to crafting “the perfect commit”.
Changing our description changed the commit ID! This is why we have both IDs: the change ID has not changed, but the commit ID has. This allows us to evolve our commit over time, but still have a stable way to refer to all versions of it.
I don’t want to “evolve a commit” - I want to capture my changes over time. If I decide later that I want to prepare the commit for merging I will.
I hate it because it’s different - but even trying to give it a “benefit of the doubt” I really can’t see this as better. It’s not like it’s difficult to create a “tidy” commit with git as is.
And as far as “easier to use goes”… well… Here’s how you get a list of anonymous branches
jj log -r 'heads(all())'
And since they eschew branches with names you get to memorize hash strings instead of branch names that describe the thing you were doing?
jj new pzoqtwuv yykpmnuq -m "merge better documentation" # vs. git merge my_branch_Name
I’m unconvinced. Though
jj undo
looks neat (and also crazy dangerous unless you can undo an undo?).I highly recommend giving Jujutsu a try. It didnt take long to learn at all and just feels so much more flexible and intuitive.