Pijul: Version-Control Post-Git • Pierre-Étienne Meunier • GOTO 2023

preview_player
Показать описание
This presentation was recorded at GOTO Aarhus 2023. #GOTOcon #GOTOaar

RESOURCES

Pierre-Étienne

ABSTRACT
This talk is about Pijul, a new version control system aiming at being more scalable, more rigorous and easier to use than all the alternatives combined. In particular, Git is 18 years old this year and is the dominant version control system for many programmers. However, many of its users complain about its poor user experience, which I believe is due to a fundamental mismatch between the internal representation of data in Git, and the way most people think about working.

I will also talk about the tools we're building around it, in particular a hosting service which we are planning to open source this year. [...]

Download slides and read the full abstract here:

RECOMMENDED BOOKS

#Pijul #Git #VersionControl #PostGit #GitRebas #hgtransplant #PierreÉtienneMeunier

Looking for a unique learning experience?

SUBSCRIBE TO OUR CHANNEL - new videos posted almost daily.
Рекомендации по теме
Комментарии
Автор

21:00 Side-note for the people confused at the notation: Meunier is using Bourbaki notation here, which is common in France. Instead of using [] and () to indicate open intervals, it just uses ] and [ and their orientation. So [0, n[ is the open interval from zero to n, and is equivalent to [0, n). Just mentioning it because I didn't learn about this notation myself until a few years ago, despite both notations being part of the official international standard ISO 31-11.

JobvanderZwan
Автор

I hope that this project will get more visibility, it really deserves it.
It's kinda unfortunate, that git is "good enough" so people simply don't know that there are better solutions.
What makes problem worse, is that git is easy to start with and by the time you start encountering problems on big projects, you already "know git" so it's seams more efficient just to struggle a bit and solve the problem, instead of learning something new.

frailas
Автор

great talk and a very interesting project.

Xerofull
Автор

I came across pijul by accident last year and I was delighted to see the improvement in user experience.

I'm an absolute badass with git, but I know that it's overly complicated for many scenarios.

blaiseutube
Автор

This directly solves a lo to headaches I've encountered maintaining a large project with hundreds of contributors and resolving merge conflicts/merge ordering. But I don't know what a path from Git to Pijul looks like within the corporate world.

_Zaid
Автор

very interesting. will look out for how the project works out

uclifyb
Автор

I would say we need pijulhub as well to make it happen. :) the name is bad for a mass product. But something like pj or pjl would work well. I do like this talk a lot. Not sure how this system would treat “bytes”, interval of bytes. Will it be utf characters, actual bytes, bits? Like what will be a diff tool look like?

The example in nest is kinda strange and looks like diff tool that is used is kinda still dumb.
I also don’t understand intention to make it mainly for files, artists, parliament. It looks like a great tool and we could replace git with something like this one day.

stanislauyan
Автор

How does this handle history-altering deletes, e.g. p4 obliterate or git filter-branch, which are sometimes needed for legal compliance reasons?

dizzysnakepilot
Автор

4:04 a few strawman arguments so far. Eg there are much simpler git workflows than git flow.

brnto
Автор

Always thought git was perfect except for associative merges and commutativity. I’m only 14 minutes in but eagerly anticipating when you say you have a content hash of all of the repo’s content, NOT including time stamp, author, commit messages, and parent commit hash.

nickr
Автор

Very cool. Im holding off switching until xplat nix, win, Mac. Really nice to finally be able to ditch git.

cdrbvgewvplxsghjuytunurqwfgxvc
Автор

C'est fou comment les français on adore faire de la théorie..

Автор

I would like to see pijul with a Gerrit front end.

blaiseutube
Автор

The talk should focus more on concrete and useful stuff to user. What problems does it solve and how easily? 30min into the talk, I still dont know if this is ever going to be useful to me. If I deem the idea good enough then I am motivated to listen to the category theory bits. And for the love of God stop with finnish names that noone can pronounce.

josephs
Автор

the difftastic tool exists, it allows to see structure changes for git log and diff. when it will learn to do merge you will forget about typical merge problem, but unfortunately they don't plan to do that now

mdfkjje
Автор

Just went to check out the project and as always, no windows binaries. Why do you Linux-enthousiasts always do this?
You're ruling out a major chunk of your potential user-base from the get go. Not all of us like, can or, want to run Linux for everyday use.
Boggles my mind every time I see it.

Rope
Автор

What the industry does not need is another version crontrol system tool!

vitorpereira
Автор

An extremely interesting presentation. As someone who is also working on a vcs (well vcs is one use case of the protocol) I would especially be interested in the "What if we stored both?" bullet at 11:33. I did not catch anywhere else in the video about this and it is the first technology besides my ibgib protocol that I've come across that makes this attempt. Most software engineers will tell you it is "inefficient" to store both diffs AND state, and I know my reasons for doing so in ibgib (version control is only one subset of timeline branch composition) but I would love to hear how & why Pijul might store both.

Aside from this, I love finding other projects with an eye on the future - especially where there is a huge (-ly successful) monopoly involved.

Great talk. 🫶

ibgib
Автор

Looks like Pijul is is in the early git stage. No one understood git initially because of its terrible API. All the arguments he's making for Pijul involve category theory, which no one will understand. It looks like Pijul can only take off when when some more socially aware engineers start using it, just like how real people added good APIs to Linus (a moron)'s terrible API design. Pijul has a terrible name also, I'm not sure it will ever gain traction unless it's renamed to something user friendly.

AndyThomasStaff
Автор

Seems like a solution looking for a problem.

igboman