this post was submitted on 11 Apr 2024
132 points (79.7% liked)

Technology

34879 readers
47 users here now

This is the official technology community of Lemmy.ml for all news related to creation and use of technology, and to facilitate civil, meaningful discussion around it.


Ask in DM before posting product reviews or ads. All such posts otherwise are subject to removal.


Rules:

1: All Lemmy rules apply

2: Do not post low effort posts

3: NEVER post naziped*gore stuff

4: Always post article URLs or their archived version URLs as sources, NOT screenshots. Help the blind users.

5: personal rants of Big Tech CEOs like Elon Musk are unwelcome (does not include posts about their companies affecting wide range of people)

6: no advertisement posts unless verified as legitimate and non-exploitative/non-consumerist

7: crypto related posts, unless essential, are disallowed

founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
[–] Turun@feddit.de 15 points 7 months ago (4 children)
  1. You can use other forges, but they have the exact same issues as GitHub. You need to make an account, you need to accept terms of service and if they feel like it (or are forced by a court) they'll ban you and your repository.

  2. git send-email exists. So it's not like you absolutely can't contribute to projects that are hosted on GitHub.

At some point in the future gitlab will get federation, but that's not a solution for now. It'll take a while.

[–] krolden@lemmy.ml 7 points 7 months ago (2 children)

Why does everyone shill gitlab as a github alternative. Theyre just another shitty corporate platform

[–] GammaGames@beehaw.org 3 points 7 months ago

You can at least self host it, though performance isn’t as good as the alternatives

[–] utopiah@lemmy.ml 1 points 7 months ago

I imagine because it's more popular and (arguably) more feature complete than Gitea (which I use).

[–] onlinepersona@programming.dev 7 points 7 months ago* (last edited 7 months ago)

At some point in the future gitlab will get federation, but that’s not a solution for now. It’ll take a while.

Gitlab had more than a decade to implement federation and didn't give 2 shits about it until one single dude (oelmeki?) decided to start implementing it. And even now, Gitlab hasn't built a team around federation and only have that single, external contributor writing all the code, tests, etc. . The only thing they're providing is "guidance". It wouldn't surprise me if oelmeki isn't even getting paid.

Gitlab feels like just another company happy to be #2 and not willing to do anything more to be better because most other alternatives are way behind. I bet if they were #1, they'd be just as bad as any other company that's #1.

Hopefully forgejo gets complete federation first and becomes real competition for gitlab. Gitlab doesn't deserve #2.

Anti Commercial AI thingyCC BY-NC-SA 4.0

Inserted with a keystroke running this script on linux with X11

#!/usr/bin/env nix-shell
#!nix-shell -i bash --packages xautomation xclip

sleep 0.2
(echo '
spoiler Anti Commercial AI thingy [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) Inserted with a keystroke running this script on linux with X11 ```bash' cat "$0" echo '``` :::') | xclip -selection clipboard xte "keydown Control_L" "key V" "keyup Control_L"

:::

[–] Drummyralf@lemmy.world 4 points 7 months ago* (last edited 7 months ago) (1 children)

Total noob here when it comes to all things git, but can't you simply host git in a privately owned server? I thought I saw that when installing some packages on my Synology NAS.

[–] Turun@feddit.de 7 points 7 months ago (2 children)

Yes, but how are you gonna accept pull requests? You need a frontend and a frontend needs an account.

Of course, all of these alternative forges (gitea, forgejo, gitlab) can be self hosted on your own private server.

[–] lurch@sh.itjust.works 3 points 7 months ago (1 children)

no, you can accept them on an open port or via CLI

[–] onlinepersona@programming.dev 4 points 7 months ago* (last edited 7 months ago) (1 children)

Not sure what you're suggesting. Here... are you suggesting random write access to a port on a device you host? Anybody can push a branch to your selfhosted repo?

Or are you talking about self-hosted forgejo, gitlab, etc.?

Anti Commercial AI thingyCC BY-NC-SA 4.0

Inserted with a keystroke running this script on linux with X11

#!/usr/bin/env nix-shell
#!nix-shell -i bash --packages xautomation xclip

sleep 0.2
(echo '
spoiler Anti Commercial AI thingy [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/) Inserted with a keystroke running this script on linux with X11 ```bash' cat "$0" echo '``` :::') | xclip -selection clipboard xte "keydown Control_L" "key V" "keyup Control_L"

:::

[–] lurch@sh.itjust.works 1 points 7 months ago (1 children)

Yes, if you want to accept pull requests from anyone, you can set up a jailed git server with public access, for example.

[–] onlinepersona@programming.dev 2 points 7 months ago (1 children)

That's not a pull request, but a merge request. Besides the point though. What I'm getting at is: isn't that asking for trouble? Somebody could

while true ; do
  head /dev/urandom -c 100MB > file.txt
  git add file.txt
  git commit -m "new commit"
  git push
done

and fill up your hard drive. Also, depending on the protocol, they could try fuzzing it. Or, pipe /dev/urandom into nc and blast your git port.

And of course, the first problem is discoverability. Who's going to find your random, unfederated, git service?

It just doesn't sound like a convincing solution, IMO.

Anti Commercial-AI license

[–] lurch@sh.itjust.works 1 points 7 months ago

no, it's not specific to merge requests. theres a tool called git-shell that prevents abuse

[–] meteokr@community.adiquaints.moe 2 points 7 months ago (1 children)

You need a frontend

Yes, but the requirement of said frontend are very small.

and a frontend needs an account.

Not required at all actually. For example, mirror a github repo in gitea. You'll see all the commits, their messages, and who made them. Yet that gitea instance isn't accessible publicly. None of those people have an account, and none of them can login even if they could access the instance. A commit is just attached to a name, that is user configurable, and a lot less data minable than a "real" account.

[–] Turun@feddit.de 2 points 7 months ago (1 children)

Would you call that open source? A read only gitea instance?

If you want to get away from GitHub a mirror won't cut it, it has to be the main dev platform.

[–] meteokr@community.adiquaints.moe 1 points 7 months ago (1 children)

You missed the point of my example entirely. How can those commits exist, and those people exist in that instance if they don't have accounts? I was refuting your statement that a frontend needs an account. By mirroring an existing repo, as an example, you could verify that my claim is correct. Git as platform is already decentralized and doesn't require accounts. You could email someone your git diff's and it will function the same.

[–] Turun@feddit.de 1 points 7 months ago* (last edited 7 months ago)

I feared as much, because the same could be said about your comment above.

I already mentioned git send-email in my comment. But the ux of that is terrible. So if you want good UX you're in account hell, having to create a new profile for every hosting site.

You can have a nice, terms of service free but read only forge, or you have terms of service and account bullshit or you can have the dev experience of git send email. Choose one of the three and until we have federation they are all terrible in some aspect.

[–] toastal@lemmy.ml 1 points 7 months ago

Due to a generation being taught only Microsoft GitHub’s system, many forges have seen it imperative to copy all of those patterns—including all of the bad ones. Being a clone of MS GitHub isn’t a very compelling reason to be on another platform, but so few are looking to actually fix the issues Microsoft would be too big/slow to adapt to—e.g. the entire pull request model being so slow for getting it merges.