4 ms·
The key insight in the third sentence? > ... CRDTs for version control, which is long overdue but hasn’t happened yet Pijul happened and it has hundreds - per
by ZoomZoomZoom 6mo ago
The key insight in the third sentence?
> ... CRDTs for version control, which is long overdue but hasn’t happened yet
Pijul happened and it has hundreds - perhaps thousands - of hours of real expert developer's toil put in it.
Not that Bram is not one of those, but the post reads like you all know what.
- simonw 6mo agoI hadn't heard of Pijul. My first search took me to https://github.com/8l/pijul https://github.com/8l/pijul which hasn't been updated in 11 years, but it turns out that's misleading and the official repo at https://nest.pijul.com/pijul/pijul https://nest.pijul.com/pijul/pijul had a commit last month. ... and of course it is, because Pijul uses Pijul for development, not Git and GitHub!
- idoubtit 6mo agoThe canonical website is https://pijul.org https://pijul.org. The homepage has a link to the pijul source repository.
- ozten 6mo agoThey should mirror on GitHub for marketing purposes
- nicoty 6mo agoHow would they do that if they don't use git for version control? Does GitHub allow other forms of version control other than git?
- simonw 6mo agoSQLite does it despite using Fossil - their mirror is at https://github.com/sqlite/sqlite https://github.com/sqlite/sqlite Git is so established now that it's sensible for alternative VCS to have a mode where they can imitate the Git protocol - or seven without that you can still checkout the latest version of your repo and git push that on a periodic basis.
- verdverm 6mo agoSimilarly, CUE uses Gerrit and has two way sync. If you are building a VCS today, git interop is a must.
- adastra22 6mo agoWhat if the whole point of your VCS is that it its core data structure is nothing like git's at all?
- verdverm 6mo agoAs a user, why do I care how the internals work? What I do care about is an easy path to progressive adoption and migration. Without that, I cannot convince my team / org to force everyone over.
- adastra22 6mo agoIt solves problems that you dont encounter if you are asking that question. I’ve lost a literal year or more of my life, in aggregate, to rebasing changes against upstream that could have been handled automatically by a sufficiently smart VCS.
- verdverm 6mo agoAn alternative explanation is that I already have a tool that helps me with these situations. The question was a bit rhetorical, because the vast majority of devs don't care what language many of their tools are written in or what algos are used. A different example, Go's MVS algo can be considered much better for dependency management. What are your thoughts on the SAT solver being replaced in your preferred language tooling? It would mean the end of lock files
- adastra22 6mo agoIf you have a tool for better rebasing, I’d love to hear it.
- ozten 6mo agopijul clone https://nest.pijul.org/pijul/pijul https://nest.pijul.org/pijul/pijul pijul log --hash-only > all_changes.txt pijul unrecord --all git init ``` for HASH in $(cat all_changes.txt); do pijul apply "$HASH" pijul reset # sync working copy to channel state git add -A git commit -m "pijul change: $HASH" done ``` git remote add origin git@github.com:you/pijul-mirror.git git push -u origin main
- codethief 6mo ago> I hadn't heard of Pijul I'm surprised! Pijul has been discussed here on HN many, many times. My impression is that many people here were hoping that Pijul might eventually become a serious Git contender but these days people seem to be more excited about Jujutsu, likely because migration is much easier.
- simonw 6mo agoLooks like it makes the homepage only once or twice a year (using points>50 as a proxy for that), had more buzz around five years ago: https://hn.algolia.com/?dateRange=all&page=0&prefix=false&query=pijul%20points%3E50&sort=byDate&type=story https://hn.algolia.com/?dateRange=all&page=0&prefix=false&qu...
- jedberg 6mo agoI too am here all the time and have never heard of it. But it looks interesting.
- vova_hn2 6mo agoI have a weird hobby: about once a year I go to the theory page [0] in pijul manual and see if they have fixed the TeX formatting yet. You would think that if a better, more sound model of storing patches is your whole selling point, you would want to make as easy as possible for people who are interested in the project to actually understand it. It is really weird not to care about the first impression that your manual makes on a curious reader. Currently, I'm about 6 years into the experiment. Approximately 2 years in (about 4 years ago), I've actually went to the Pijul Nest and reported [1] the issue. I got an explanation on fixing this issue locally, but weirly enough, the fix still wasn't actually implemented on the public version. I'll report back in about a year with an update on the experiment. [0] https://pijul.org/manual/theory.html https://pijul.org/manual/theory.html [1] https://nest.pijul.com/pijul/manual/discussions/46 https://nest.pijul.com/pijul/manual/discussions/46
- AceJohnny2 6mo ago> It is really weird not to care about the first impression that your manual makes on a curious reader. On the contrary, I think this is an all-too-familiar pitfall for the, er... technically minded. "I've implemented it in the code. My work here is done. The rest is window dressing."
- oofbey 6mo agoHilarious. I agree that it says a lot how a project handles reports like these.
- onoesworkacct 6mo agoI mean, I personally just saw some stuff inside dollar signs and went "huh, weird choice of delimiter"
- rbsmith 6mo agoDo you use Pijul? From time to time, I do a 'pijul pull -a' into the pijul source tree, and I get a conflict (no local work on my part). Is there a way to do a tracking update pull? I didn't see one, so I toss the repo and reclone. What works for you in tracking what's going on there?
- adastra22 6mo agoFrom time to time I get curious about Pijul, attempt to pull the Pijul repo from the nest, and encounter a no-workaround-possible bug in the network sync. I have never been able to do a fresh clone of Pijul. It is very hard to take a project like this seriously.
- deleted 6mo ago[deleted]
- mkj 6mo agoAre you saying Bram hasn't worked on VCS problems much? https://web.archive.org/web/20071213090008/http://codeville.org/ https://web.archive.org/web/20071213090008/http://codeville.... is 20 years.
- zamalek 6mo agoPijul isn't a CRDT is it? It's theory of patches (i.e. DARCS++) alongside native conflicts.
- gnufx 6mo agoIts author says it implements a CRDT in its theory documentation.