jj tug

39 points by indigo


apropos

Nice. The ease in which you can write your own jj primitives is perhaps undersold by their official docs. Aside from what this article does, as aliases atop built-in commands, you can also shell out to your favourite scripting language... I wrote a jj move command to move filesets across revisions a little while back (alongside wrappers to tweak jj split and jj squash accordingly) and it's become the main way I interact with jujutsu ever since.

That's another thing with jujutsu I find interestingly, actually. There's no one way to use it! The tutorial discusses this a little bit with the "squash workflow" vs. the "edit workflow", but I think there's a variety of different and more fine-grained distinctions than this, and I'd be really interested to see them all. Especially with support for explicit tracking now! (Which isn't my workflow, but may be appreciated by others.)