this post was submitted on 16 Apr 2024
346 points (95.3% liked)

Open Source

30369 readers
1093 users here now

All about open source! Feel free to ask questions, and share news, and interesting stuff!

Useful Links

Rules

Related Communities

Community icon from opensource.org, but we are not affiliated with them.

founded 5 years ago
MODERATORS
 

Are you guys fine with these new shenanigans from Github. I found a bug and wanted to check what has been the development on that, only to find out most of the discussion was hidden by github and requesting me to sign-in to view it.

It threw me straight back to when Microsoft acquired Github and the discussions around the future of opensource on a microsoft owned infrastructure, now microsoft is exploiting free work from the community to train its AI, and building walls around its product, are open source contributors fine with that ?

you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] -4 points 5 months ago* (last edited 5 months ago) (18 children)

Your project will inevitably get forked onto MS GitHub & the SEO will rank that fork above you—changing VCS adds a layer of friction that discourages forking back onto MS GitHub. Best you see is these pretty please attempts to encourage not forking to Microsoft’s platform. Microsoft has a massive pull in the direction Git goes, & whatever MS GitHub does, the alternative forges seems to want to clone even if it’s bad (look at Forgejo diverging from Gitea to copy Actions verbatim even tho we all know working with YAML for CI is a bad idea that scales poorly). When you look at the latest release notes for Git, often the first publisher is GitHub’s blog—this is what gets shared around the link aggregators. Part of the strategic purchase of GitHub on Microsoft’s part was getting access to that project sway (& upselling services—it’s not pure conspiracy—with some of the changes definitely being for the better).

And again, Git is not the best DVCS—but folks are hesitant to try other platforms since there is less forges & tooling. If Microsoft is controlling the Git ecosystem like it is, that effort, in my opinion, would be better spent choosing a better DVCS system that isn’t already infected by Microsoft or Google or Apple or similar.

[–] [email protected] 10 points 5 months ago (9 children)

Git is not the best DVCS

What would you suggest is a better DVCS than git?

[–] [email protected] 9 points 5 months ago* (last edited 5 months ago) (8 children)

Personally, I find the Patch Theory options the most compelling since fundamentally patches should commute—meaning it doesn’t matter if patch α or patch β was merged first & you start to feel weird that you get merge conflicts despite the same end result in something snapshot-based. The two big contenders are Darcs, the still-maintained pioneer in the space & new(ish)comer, Pijul. Darcs has less rough edges being about as old, stable as Git but has some performance issues (where some of the old perf issues are fixed, some remain) & being Haskell, libraries get created since that community loves to code more than it likes to maintain so libraries can go out of date & package tooling still isn’t what it could be. Pijul, memes aside, is written in Rust with some more modern sensibilities & has a really cool independent identity management system (you can hide your name/email for privacy, or change it to not be deadnamed & not have to raise a merge request to rebase your new identity on all repos you’ve contributed to), but it’s pretty barebones despite being technically feature complete I believe—with rebase being missing feels like a glaring issue as the way to fix muliple patches without losing metadata isn’t fully exposed. Nest, the forge from Pijul’s creator, is pretty lackluster too IMO from featureset to self-hosting stack without any real alternative yet. It’s still a project worth watching & SSH+HTTPS work fine for hobby projects. For Darcs, Darcsden is fine but not great & showing its age, but newly started Smeederee seems to be going in a good direction, the rest of the old forges are written in like Python 2. …Which is the part where I would like to see some of that yet-another-Git-forge effort & enegery flow into these channels.

Fossil is interesting too for shipping the whole forge, & have heard it’s great for small teams as that is what it’s optimized for, but I haven’t used it.

[–] [email protected] 3 points 5 months ago (1 children)

Pijul is a very exciting project. I’ve wanted to try it for months buy haven’t found the time.

[–] [email protected] 1 points 5 months ago* (last edited 5 months ago)

Not to say don’t (do try it), but Darcs might be better if you just want to understand some of the fundamentals since it’s more mature. A small project will not perceive any performance difference. If you use Git’s CLI heavily, Pijul’s CLI will seem barren in comparison & tooling even like vim-signify doesn’t have support. Pijul’s diff isn’t GNU diff compatible so that tooling won’t help either.

If you grasp Darcs, moving to Pijul is pretty simple since they are based on the same theory—you just might need to be invested enough to start building your own tooling which is more of a time commitment. Pijul is meant to be scripted which is partly why it’s barren—so for a trivial expample I created a small shell script pijul-amend which wraps pijul record --amend which is picked up as pijul amend mimicking darcs amend. Maintenance is easier when a project supports only the minimum set of commands, but you’ll be building your own ergonomics (no rebase, no send-mail, etc.). Maybe in the future when there is a bigger contrib space to fill in the gaps, it won’t be such an investment to just to test out.

load more comments (6 replies)
load more comments (6 replies)
load more comments (14 replies)