Sure, I know a lot of projects have been on GH since before MS bought it, but they’ve owned it for quite a while now, so we really should be seeing better migration out by now, no?

Codeberg is nonprofit which seems more in the spirit of the Linux ecosystem overall. GH is for-profit…

EDIT: All right, all right, I’ve gotten schooled. Thank you, O wise ones; I didn’t realize how much Microsoft literally depends on Linux, among other things. I will proceed to shut up.

  • 9point6@lemmy.world
    link
    fedilink
    arrow-up
    7
    ·
    7 days ago

    GitHub has been around for nearly 2 decades and was largely considered a mostly good thing until maybe the past couple of years. Also important to add that Microsoft seems to mostly have left it alone for the first couple of years (possibly with the exception of Atom, which it left very alone)

    In addition to people just generally being slow to change, changing can take quite a bit of effort for some projects for varying reasons. Many of those same projects struggle to keep up with the maintenance workload, so they’re not going to jump at the chance to add more work to their plates.

    Finally, some people just don’t care. For instance, the MIT license being popular is pretty hard evidence that FOSS doesn’t necessarily mean anti-corporate, and for many users GitHub still more or less does what it says on the tin.

    Though I will say if the service disruptions and ad-injection bullshit continue you’ll only see GitHub competitors grow. GitLab seems to be going after their enterprise customers with some success.

    • KssioAug@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      1
      ·
      7 days ago

      For instance, the MIT license being popular is pretty hard evidence that FOSS doesn’t necessarily mean anti-corporate, and for many users GitHub still more or less does what it says on the tin.

      I’m pretty sure that MIT license is that popular out of ignorance, instead of an informed decision to allow corporate to steal and make money out of their code.

      • CoryCoolguy@lemmy.myserv.one
        link
        fedilink
        arrow-up
        1
        ·
        6 days ago

        Respectfully disagree. I can only speculate why other developers choose MIT. But for small and medium-sized projects, a more restrictive license is unlikely to protect them from this scenario anyway. And if that’s true, one could argue it’s better to go down a road where corporate sponsorships are potentially more likely.

        Personally, I often choose MIT because I don’t care who uses my code and for what, and I’d prefer that it be easy to borrow from. I used to be concerned about how my code was used, but over the years I’ve developed a strong dislike for copyright as a concept in general so I fight it how I can. Some of my projects are so simple that even MIT seems like overkill. In those cases I use the Unlicense.

      • tabular@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        7 days ago

        I’d like to think that is so but some here will argue non-copyleft licenses are “more free”. Ime they don’t reply after I point out that’s the freedom to deny others freedom.

        • MonkeMischief@lemmy.today
          link
          fedilink
          arrow-up
          0
          ·
          6 days ago

          I remember this confusion a LOT back when main-branch Blender had its own game engine built in.

          Forums were full of people saying crap like :

          “Don’t use that, because since you used Blender which is GPL it means you have to provide the source code to your incredible GOTY contender and then everybody will beat you at life!!!”

  • stratself@lemdro.id
    link
    fedilink
    English
    arrow-up
    3
    ·
    6 days ago

    The case of free CI/CD, visibility, and network effects are already said. So I wanna offer an anectode: someone I know is a graphic designer, who maintains a project that curate icons. Moving to Codeberg means he has to interact with PRs using the CLI, which he really does not have familiarity with. GitHub OTOH has a simple desktop client that allows natively switching across PRs, approving then in the UI, etc. It’s really, really convenient for someone who’s not a developer.

    I think Forgejo-based platforms will need to work on a very good GUI client, in order to attract less technical contributors.

  • Mangoholic@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    5 days ago

    Amuy new projects are codeberg. But github has a default 10gb repo space. Imagine everyone suddenly wants that on codeberg, the cost alone would force them to shut down or have other forms of income than donations.

    • Dymonika@lemmy.mlOP
      link
      fedilink
      arrow-up
      1
      ·
      2 days ago

      I didn’t know the repo space was that different. That does play a factor in all this…

  • jollyrogue@lemmy.ml
    link
    fedilink
    arrow-up
    2
    ·
    6 days ago

    For some people, they don’t actually care about the politics of FOSS; they want a portfolio for employers.

  • BartyDeCanter@piefed.social
    link
    fedilink
    English
    arrow-up
    2
    ·
    7 days ago

    Two main reasons: history and network effects.

    GitHub was an independent company for a decade that provided a vastly superior service to what it replaced, primarily SourceForge. And it was free for FOSS projects, while charging for closed ones.

    The improvements paid for by the closed source customers trickled out to everyone. So, it became the best place for FOSS developers, large and small. And as more people moved to GH, the more reason there was to move to it.

    Of course, it was constantly bleeding money and eventually had to do something. That ended up being selling to MS.

    There was a lot of trepidation about this, but for the first few years they not only kept their promise about supporting FOSS, but actually made it better by allowing small private repos to get many of the services that were previously gated for open FOSS or paid repos.

    And the alternatives were stil not as good, and just as importantly didn’t have the user networking that GH does.

    Now, some FOSS people are starting to look elsewhere, Codeberg, self-hosted Forgejo, and others. They have come a long way and are nearing feature parity, particularly for smallish projects. But the network effects of discovery and reputation are strong, and GH still provides a few more useful features.

    I’ve moved my private repos to self hosted Forgejo, but my public ones are still on GH as push mirrors. I’m not ready to give up the discoverability and Mac/Windows CI runners that I can get from GH for free. I hope to be able to some day, but not yet.

    • MonkeMischief@lemmy.today
      link
      fedilink
      arrow-up
      0
      ·
      6 days ago

      There was a lot of trepidation about this, but for the first few years they not only kept their promise about supporting FOSS, but actually made it better by allowing small private repos to get many of the services that were previously gated for open FOSS or paid repos.

      • They embraced! :D
      • They extended! :D
      • . . .aw, shit. :/

      I’ve only a basic understanding of using Git myself, but I think I’m gonna learn it with a self-hosted Forgejo for my Godot projects too.

      Then for the parts that don’t have feature parity, I won’t know what I’m missing, and I have no need for “iNdUsTrY sTaNdArD LeAdiNg oPtiMiZeD sYnErGyStiC wOrKfLoWs” or whatever hahaha.

      It does definitely present a conundrum if you want people to see your open source software though. Damn network effect. =\

      • BartyDeCanter@piefed.social
        link
        fedilink
        English
        arrow-up
        0
        ·
        6 days ago

        The number one thing to remember about git is that you don’t need a full hosting service around it for basic functionality. If it’s just you, a single local repo will probably serve you just fine, maybe use a bare repo on your main machine or a Pi-level device if you like as a remote/backup. Just git init or git init --bare and you’re good to go. GitHub, Codeberg, Forgejo, and all the others exist to serve multi-contributor and/or public project-level needs.

        The number two thing to remember is that it is based around graph theory.

        • MonkeMischief@lemmy.today
          link
          fedilink
          arrow-up
          0
          ·
          6 days ago

          That’s some really helpful advice, thank you! 😃 I actually didn’t know you could just make any local folder a repo like that.

          Would a Forgejo instance still be helpful if I wanted to have “one point of truth” between multiple machines even if I’m the only dev? I already use Syncthing, but for some reason I feel like there’d be a lot of sync conflicts and stuff.

          The other main reason for wanting to learn Git, of course, is because it’s otherwise more difficult to try out changes to scripts and experiment, without finding yourself lost in the weeds and forgetting what worked last.

          My current “version control” is “copy the entire project folder before you do anything major.” 😂

          • BartyDeCanter@piefed.social
            link
            fedilink
            English
            arrow-up
            0
            ·
            edit-2
            5 days ago

            If you just want one point of truth, the minimal version is to create a bare repo somewhere that you have ssh access to or your local machine. Then you can clone/pull/push from it.

            A bare repo is a special kind of repo meant for exactly this, but can be a bit confusing at first. A normal repo contains all of your current working files and a special .git directory that holds all the files/blobs/history that git needs to work. A bare repo is just the .git as a top directory with bare=true in its config. So you can use it as a remote, but it never has a working set. They are usually named something like my_repo.git.

            Edit:

            Here’s a basic example for setting it all up in a fully local way:

            mkdir ~/bares  
            git init --bare ~/bares/my_repo.git  
            mkdir ~/code  
            git clone ~/bares/my_repo.git ~/code/my_repo  
            

            And then you have remotes as your main source of truth in ~/bares and your working copies in ~/code. If you want to access from another machine that has ssh access to the first, you can do:

            mkdir ~/code  
            git clone user@host:~/bares/my_repo.git ~/code/my_repo  
            

            And then use git pull/push to keep it all in sync. Don’t use Syncthing on a git repo, it eventually goes badly.

            • MonkeMischief@lemmy.today
              link
              fedilink
              arrow-up
              0
              ·
              5 days ago

              This was really informative, thank you so much for taking the time! Definitely bookmarking this. :)

              I was looking up further why you’d use a bare repo over a standard one. Somebody said for just sharing a repo between users, “snapshots just take up unnecessary space.”

              …But would that mean you can’t roll back history? Maybe I’m ignorant on the term snapshot in Git context lol.

              But yeah, I really appreciate the post and I think that’ll get me on the right foot, to actually developing games instead of setting up yet another tool and procrastinating what I want to actually be doing anyway. 😂

              Glad my instinct was correct about not using Syncthing for this purpose. XD

              • BartyDeCanter@piefed.social
                link
                fedilink
                English
                arrow-up
                0
                ·
                5 days ago

                Happy to help! And yes, I have no idea what they’re talking about. If you don’t have snapshots (commits) you don’t have version control.

                Let me know when you get your game going, I’d love to check it out. I’m working on a few myself.

  • utopiah@lemmy.ml
    link
    fedilink
    arrow-up
    1
    ·
    6 days ago

    It’s disappointing yet unsurprising to read the recurring answers, namely :

    • cost
    • incumbency

    precisely because it’s absolutely avoidable and a well known strategy. It’s so well known that it’s precisely why Micro$lop bought Github in the first place. People are there and the free tiers is enough to get the long tail.

    Meanwhile since that strategy happened people who consider smart enough should know the genuine cost behind this : it’s a TRAP. Plain and simple, you get there and you get STUCK there.

    So… yes it takes some sweat and even some money to leave the trap … but if you care about freedom, as most free software or open-source developers might, then it’s aligned with your value.

  • ian@feddit.uk
    link
    fedilink
    English
    arrow-up
    1
    ·
    6 days ago

    I joined Github and others, years ago to report bugs in software. But now I rage quit Github. No more bugs from me unless you move your application to a more acceptable platform. I suggest every bug reporter user do likewise. Screw Microsoft.

  • quick_snail@feddit.nl
    link
    fedilink
    arrow-up
    1
    ·
    edit-2
    6 days ago

    Codeberg doesn’t offer CI runners* for macOS for free.

    It’s important if you have cross platform apps

  • KssioAug@lemmy.dbzer0.com
    link
    fedilink
    arrow-up
    1
    ·
    7 days ago

    I believe the core reason is that, when MS bought it, and while they make it worse day by day, the number of projects in Github was already huge and it just keeps growing. That being said, it is still the main platform to find FOSS projects, and to have your project be found.

    A lot of people are migrating though. The good thing about the FOSS community and philosophy is that they don’t really need to rely on shitty companies like Microsoft. They can (and many actually do) just move on, at least regarding their own personal projects.

    • Telorand@reddthat.com
      link
      fedilink
      arrow-up
      0
      ·
      7 days ago

      Yep. For example, Gnome migrated to Gitlab some time ago. Obviously it’s not as ethical as Codeberg, but maybe it offers certain features that Codeberg doesn’t (yet) have that they require. PikaOS is (was?) on Gitea.

      For my part, I’ve left Github and will only do development on Codeberg. I’ll still make pull requests to upstream projects that only exist on Github, but I have no control where those parent projects are hosted, and improving those projects is still a net benefit to everyone.

      • Bogus007@lemmy.zip
        link
        fedilink
        arrow-up
        1
        ·
        4 days ago

        Gentoo and Guix moved their projects to Codeberg. The programming language Zig did it as well. I have heard from few others, which moved to Gitea (Fedora).

  • diaphragmwp@discuss.tchncs.de
    link
    fedilink
    English
    arrow-up
    0
    ·
    6 days ago

    Been on this post before but just noticed you mentioned “Linux project” as if everything open source (or even source available) is Linux. Quite the ignorance…

    • Dymonika@lemmy.mlOP
      link
      fedilink
      arrow-up
      1
      ·
      4 days ago

      Huh? I am aware; I didn’t say “all Linux projects,” did I? Of course I already know that there are already some on Codeberg and elsewhere, but I still wanted to address the behemoth.

      • diaphragmwp@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        4 days ago

        I am not talking about the git provider, I am talking about “Linux project”. I know we are kind of on “@[email protected]”, but how many tools you use do you think are truly Linux specific? Even some long time linuxisms like libinput and DRM have been ported over to BSDs for example.

  • Evotech@lemmy.world
    link
    fedilink
    arrow-up
    0
    arrow-down
    1
    ·
    6 days ago

    If you think github is unstable you haven’t tried codeberg. It’s down multiple times every day.