• Hucklebee@lemmy.world
    link
    fedilink
    arrow-up
    4
    ·
    edit-2
    3 months ago

    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
      link
      fedilink
      arrow-up
      7
      ·
      3 months ago

      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.

        • onlinepersona@programming.dev
          link
          fedilink
          English
          arrow-up
          4
          ·
          edit-2
          3 months ago

          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 thingy

          CC 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
            link
            fedilink
            arrow-up
            1
            ·
            3 months ago

            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
              link
              fedilink
              English
              arrow-up
              2
              ·
              3 months ago

              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

      • meteokr@community.adiquaints.moe
        link
        fedilink
        arrow-up
        2
        ·
        3 months ago

        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
          link
          fedilink
          arrow-up
          2
          ·
          3 months ago

          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
            link
            fedilink
            arrow-up
            1
            ·
            3 months ago

            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
              link
              fedilink
              arrow-up
              1
              ·
              edit-2
              3 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.