The main question I had was why I should leave git in favor of pijul. I had to do a bit of digging to find the following, which does a good job showcasing how patch-based solutions are better at handling merges.
It's very interesting, but it really lacks a good explanation of this theory of patches, even in the documentation. I'm guessing a careful read-through will reveal many insights, however.
It's a bit annoying when it's being sold as being so simple and intuitive, to not be able to find an explanation that makes you understand the thing completely.
I have used Darcs for years and absolutely loved it's user friendlyness. Theory of patches makes for some elegant use cases. I'll have to give Pijul a try! Only downside of Darcs was it's performance in some edge conditions. Pijul looks like it's built on an improved version of the theory.
Wish they'd link to what a theory of patches is, but it looks like the same one which darcs: http://darcs.net/ used. Except they tried to keep all the algorithm runtime to O(ln h) with h being length of history.
> In Pijul, the state of a repository is exactly the (non-ordered) set of patches that were applied to it since its creation.
I'd love to learn more about how non-ordered patches work here. Surely they aren't actually not ordered, but more implicitly ordered based on what they're changing from and to?
Very keen to try it out, but just running the windows .exe does not work. Also adding the dll does not help. I guess they want to limit their users to real experts till now. Really a pity.
https://tahoe-lafs.org/~zooko/badmerge/concrete-good-semanti...