• zaphod@lemmy.ca
    link
    fedilink
    English
    arrow-up
    82
    arrow-down
    2
    ·
    edit-2
    10 months ago

    The idea of “self-hosting” git is so incredibly weird to me. Somehow GitHub managed to convince everyone that Git requires some kind of backend service. Meanwhile, I just push private code to bare repositories on my NAS via SSH.

    • platypus_plumba@lemmy.world
      link
      fedilink
      English
      arrow-up
      33
      arrow-down
      3
      ·
      edit-2
      10 months ago

      They didn’t convince anyone of anything, they just have a great free-tier service, so people prefer using it than self-hosting something. You can also self-hosted Github if you want the features they offer, besides Git.

      • zaphod@lemmy.ca
        link
        fedilink
        English
        arrow-up
        31
        arrow-down
        1
        ·
        edit-2
        10 months ago

        This post is about “self-hosting” a service, not using GitHub. That’s what I’m responding to.

        I’m not saying GitHub isn’t valuable. I use it myself. And in any situation involving multiple collaborators I’d probably recommend that kind of tool–whether GitHub or some self-hosted option–for ease of user administration, familiar PR workflows, issue tracking, etc.

        But if you’re a solo developer storing your code locally with no intention to share or collaborate, and you don’t want to use GitHub (as, again, is the case with this post) a self-hosted service adds a ton of complexity for only incremental value.

        I suspect a ton of folks simply don’t realize that you don’t need anything more than ssh and git to push/pull remote git repositories because they largely cargo cult their way through source control.

        • HappyRedditRefugee@lemm.ee
          link
          fedilink
          English
          arrow-up
          5
          ·
          10 months ago

          Is running a docker container a lot of overhead?

          Ernestly asking, since my opinion is skewed cause im use to running containers.

          • zaphod@lemmy.ca
            link
            fedilink
            English
            arrow-up
            6
            ·
            edit-2
            10 months ago

            Absolutely. Every service you run, whether containerized or not, is software you have to upgrade, maintain, and back up. Containers don’t magically alleviate the need for basic software/service maintenance.

            • HappyRedditRefugee@lemm.ee
              link
              fedilink
              English
              arrow-up
              2
              ·
              10 months ago

              Yes, but doesn’t that also apply for a machine running bare git?

              Not containers also adds some challenges with posibly having dependecies problems. I’d say running bare git is not a lot easier than having a container with say forgejo.

              • zaphod@lemmy.ca
                link
                fedilink
                English
                arrow-up
                2
                ·
                edit-2
                10 months ago

                No. It’s strictly more complexity.

                Right now I have a NAS. I have to upgrade and maintain my NAS. That’s table stakes already. But that alone is sufficient to use bare git repos.

                If I add Gitea or whatever, I have to maintain my NAS, and a container running some additional software, and some sort of web proxy to access it. And in a disaster recovery scenario I’m now no longer just restoring some files on disk, I have to rebuild an entire service, restore it’s config and whatever backing store it uses, etc.

                Even if you don’t already have a NAS, setting up a server with some storage running SSH is already necessary before you layer in an additional service like Gitea, whereas it’s all you need to store and interact with bare git repos. Put the other way, Gitea (for example) requires me to deploy all the things I need to host bare repos plus a bunch of addition complexity. It’s a strict (and non-trivial) superset.

                • HappyRedditRefugee@lemm.ee
                  link
                  fedilink
                  English
                  arrow-up
                  1
                  ·
                  10 months ago

                  I dont know. 😆 im really just trying to get it in case -for example- of needing to advice someone in such a case :) my confusion probably comes from the fact that I have never host anything outside containers.

                  I still see it a bit diferent. A well structured container structure with configs as files instead of bare commands, back up volumes would be the same effort… But who knows. Regarding the rest like proxies, well you do not really need one.

                  Thanks taking the time to explain you point tho!

                  • zaphod@lemmy.ca
                    link
                    fedilink
                    English
                    arrow-up
                    1
                    ·
                    edit-2
                    10 months ago

                    Honestly the issue here may be a lack of familiarity with how bare repos work? If that’s right, it could be worth experimenting with them if only to learn something new and fun, even if you never plan to use them. If anything it’s a good way to learn about git internals!

                    Anyway, apologies for the pissy coda at the end, I’ve deleted it as it was unnecessary. Keep on having fun!

    • azertyfun@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      27
      arrow-down
      1
      ·
      10 months ago

      You’re completely missing the point. Even Gitea (much simpler than GitHub, nevermind GitLab) is much more than a git backend. It’s viewable in a browser, renders markdown, has integrated CI functionality, and so on.

      Even for my meager self-host use-case, being able to view markdown docs in the browser is useful from time to time, even on my phone.

      As for the things I use (a self-hosted) GitLab instance at work for… that doesn’t even scratch the surface.

      • Ook the Librarian@lemmy.world
        link
        fedilink
        English
        arrow-up
        5
        arrow-down
        4
        ·
        10 months ago

        Do you honestly think they’re “completely missing the point”? Read the meme. There’s no mention of gitea. Self-hosting git is nothing to wiggle your tie over. Maybe setting up the things you are talking about are, but git?

        • azertyfun@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          7
          arrow-down
          1
          ·
          10 months ago

          The title of the post is literally “I love my Gitea”.

          The content of them meme does conflate “git” with its various frontends (like gitea), but it’s an incredibly common misnomer so who cares?

          The person I responded to then went on a weird rant about how “git by itself is distributed” which is completely irrelevant to the point since OP’s Gitea provides a whole lot more.

          • Ook the Librarian@lemmy.world
            link
            fedilink
            English
            arrow-up
            2
            arrow-down
            3
            ·
            10 months ago

            I said “read the meme” because that is all I was addressing. The title is just engagement-bait as far as I’m concerned. It’s either a meme or question. I’m sure others are here for the question but not the meme. And therefore, I’m being engagement-baited. Who knows, but I was clear about what I was talking about.

            I just think saying “you’re completely missing the point” to a comment that is perfectly on topic is completely uncalled for.

            I reason I think git is dead-simple to “self-host” is because I do it. I’m not a computer guy. I just used svn to version control some papers with fellow grad students. (it didn’t last, i was the only one that liked it.) so now i use git for some notes i archive. I’m not saying there aren’t tools to considerably upgrade the easy-of-use factor that would require some tech skills I don’t possess, but I stand by point.

    • vzq@lemmy.blahaj.zone
      link
      fedilink
      English
      arrow-up
      11
      arrow-down
      1
      ·
      10 months ago

      Bare repos with multiple users are a bit of a hassle because of file permissions. It works, and works well, as long as you set things up right and have clear processes. But god help you if you don’t.

      I find that with multiple users the safest way is to set up/use a service. Plus you get a lot of extra features like issue tracking and stuff.

      • zaphod@lemmy.ca
        link
        fedilink
        English
        arrow-up
        4
        ·
        edit-2
        10 months ago

        Agreed, which is why you’ll find in a subsequent comment I allow for the fact that in a multi-user scenario, a support service on top of Git makes real sense.

        Given this post is joking about being ashamed of their code, I can only surmise that, like I’m betting most self-hosters, they’re not dealing with a multi-user use case.

        Well, that or they want to limit their shame to their close friends and/or colleagues…