We are changing our system. We settled on git (but are open for alternatives) as long as we can selfhost it on our own machines.

Specs

Must have

  • hosted on promise
  • reliabile
  • unlikely to be discontinued in the next >5 years
  • for a group of at least 20 people

Plus

  • gui / windows integration
  • Nine@lemmy.world
    link
    fedilink
    English
    arrow-up
    3
    ·
    3 months ago

    TBH have you tried just basic git? There’s a web interface built into git itself and you can use ssh for your repositories. It’s simple and just works. If you need a faster web interface there’s also cgit. There’s no bells and whistles either. Just configure ssh, drop your repos in /srv and get to work.

    If you need more that just standard basic git the. The other suggestions here are great especially forgjo!

  • prettybunnys@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    4
    arrow-down
    1
    ·
    3 months ago

    If money isn’t a problem then gitlab is your best choice.

    It’s the most mature of the options you have available to you.

    I use gitlab for airgapped networks

    • barsquid@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      3 months ago

      I would use Gitlab only in an airgapped network. Password resets sent to attacker-supplied emails is such a complete failure of a security model it seems like it is only a matter of time until the next critical vulnerability.

    • EffortlessOps@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      3 months ago

      I’ve been looking at gitea because of its gitops capabilities that seem to be pretty much on par with github actions. Do you know if forgejo has something similar? There seems to be a lack of documentation in that area. This has been my only reason for not moving to forgejo but im hoping im wrong and just missed some documentation.

      EDIT: Thank you all who provided some additional insights that I was missing. I’ll take the leap and give forgejo a try!

      • PlexSheep@infosec.pub
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        Forgejo actions is basically GitHub actions. The difference in my ci scripts is a single line and you can even use GitHub action templates or whatever they’re called.

        You just need to add some runners to your server, which is pretty easily doable by just using some docker container and deploying that multiple times

    • swooosh@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      Thank you! That would be my go to for my own projects as well. As far as I know they don’t want company sponsorship. I am unsure about sustainability

          • ijhoo@lemmy.ml
            link
            fedilink
            English
            arrow-up
            1
            ·
            3 months ago

            Maybe check how long it is already going, so it can give you some confidence. Forgejo is a fork of gitea, which is a fork of gogs.

            Also, codeberg, a nonprofit from Germany, is supporting development.

            https://docs.codeberg.org/getting-started/what-is-codeberg/

            The codebase history of Forgejo and its predecessors predates Codeberg. However, since 2022, Codeberg is backing the development of Forgejo as an umbrella organization.

          • SpeakinTelnet@sh.itjust.works
            link
            fedilink
            English
            arrow-up
            1
            ·
            edit-2
            3 months ago

            Any evidence of that? Genuinely curious as I can’t really find anything about them being by the same people and forgefed started as mailed-based prior to forgejo existing.

            edit: seems like they are funded by different organizations and the main contributors to forgefed never worked on forgejo, they worked on vervis though.

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    3 months ago

    I would go with Gitea or Forgejo (not sure how this is going to last) if you need a complete experience like a WebUI, issues, PR, roles and whatnot.

    If you’re looking for just a git server then gitolite is very good and solid option. The cool thing about this one is that you create your repositories and add users using a repository inside the thing itself :).

    Then you can use any Windows GUI you would like like Fork, SourceTree, your IDE etc

  • moira@femboys.bar
    link
    fedilink
    English
    arrow-up
    1
    ·
    3 months ago

    If you only need a bare minimum, and don’t plan to heavily use CI/CD, container/packages registries, integrations with other tools i would go with gitea/forgejo (you can always use external tools on top), else i would use selfhosted Gitlab, it has pretty much all the things you could imagine to need with software development and deployment

    • kata1yst@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      +1 for Gitlab. As the number of developers increases the features of Gitlab will get more and more important. Only OP can say, but if they’re closer to 9 developers than 2, I think it’s a safe bet they’ll need the extra features sooner rather than later.

  • NeoNachtwaechter@lemmy.world
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    3 months ago

    Define, what does “git” mean to you?

    The core git is a peer to peer system. You don’t need any server at all. It runs on all of your dev’s workstations anyway.

    If you want a webserver with gitlab etc. on top of it, then that determines most your needs. In addition, a properly set up nameserver is very helpful, and maybe you want even an Active Directory?

    • swooosh@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      We are looking for a versioning system for collaborated work. Each person shall have his own version with a central main version. Being able to commit, push and restore versions.

      Thx for asking, we have a nameserver and active directory. We move this system from team foundation server / azure devops server

  • chiisana@lemmy.chiisana.net
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    3 months ago

    I’m aware this is the selfhost community, but for a company of 20 engineers, it is probably best to use something commercial in the cloud.

    Biggest pain point was for our ops guy, who constantly had to stay behind to perform upgrades and maintenance, as they couldn’t do it during business hours when the engineers are working. With a team of at least 20, scheduling downtimes could get increasingly more difficult.

    It also adds an entire system to be audited by the auditors.

    The selfhost vs buy commercial kind of bounces back and forth. For smaller teams, less than 5 to 10 engineers, it might be a fun endeavour; but from that point on, until you get to mega corp scale with dedicated ops department maintaining your entire infrastructure, it is probably more effective to just pay for a solution from a major vendor in the cloud instead.

    • swooosh@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      Nope. Hosting in the cloud isn’t possible due to legal reasons.

      I don’t think that downtimes area serious issue for us.

    • corsicanguppy@lemmy.ca
      link
      fedilink
      English
      arrow-up
      1
      ·
      3 months ago

      Biggest pain point was for our ops guy, who constantly had to stay behind to perform upgrades and maintenance,

      This is weird.

      Hosts selected for updates will be unavailable from 2100-2110 or so. Then they’re up.

      They’re done by at/cron if they’re selected.

      There’s no manual work if the monitoring system thinks they’re okay.

      Gitlab-ce on-prem. Although that may now suck since they’re being bought out; and we all know how that went for redhat.

    • catloaf@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      arrow-down
      1
      ·
      3 months ago

      Git should be able to go down during the day. Worst case you just can’t push to origin for a little while. You can still work and commit locally.

      • chiisana@lemmy.chiisana.net
        link
        fedilink
        English
        arrow-up
        0
        ·
        3 months ago

        No PRs means no automated tests/CI/CD, which means you’d slow down the release train. It might typically be just a 2 minutes quick cycle, but that one time it goes off for longer due to a botched update from upstream means you’re never going to do that again during business hours.

        • sugar_in_your_tea@sh.itjust.works
          link
          fedilink
          English
          arrow-up
          2
          ·
          3 months ago

          Eh, we’ve had our self-hosted Github go down for a couple hours in the daytime, and it wasn’t a big deal. We have something like 60 engineers spread out across the globe, about 15-20 that were directly impacted by the outage (the rest were in different timezones). Yeah, it was annoying, but each engineer only creates like 1 or 2 PRs in a given day, so they posted their PRs after the outage was resolved while working on something else. Yeah, PRs were delayed by a couple hours, but the actual flow of work didn’t change, we just had more stuff get posted all at once after the problems resolved.

          In fact, Github would have to be out for 2 days straight before we start actually impacting delivery. An hour or two here and there really isn’t an issue, especially if the team has advance notice (most of the hit to productivity is everyone trying to troubleshoot at the same time (is it my VPN? Did wifi die? Etc).

  • pezhore@lemmy.ml
    link
    fedilink
    English
    arrow-up
    0
    arrow-down
    1
    ·
    3 months ago

    I’ll come out with an anti-recommendation: Don’t do GitLab.

    They used to be quite good, but lately (as in the past two years or so) they’ve been putting things behind a licensing paywall.

    Now if your company wants to pay for GitLab, then maybe consider it? But I’d probably look at some of the other options people have mentioned in this thread.

    • theroff@aussie.zone
      link
      fedilink
      English
      arrow-up
      2
      ·
      3 months ago

      The company behind GitLab is seeking buyout offers, so make of that what you will.

      My employer uses GitLab CE and it’s pretty good, and it is FOSS. The EE version is “open core” so not really FOSS.

      If I were starting from scratch I’d be looking into Gitea/Forgejo as well.

    • swooosh@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      0
      ·
      3 months ago

      I’m all for foss but foss shall not be a reason to stay behind. We’ve got enough money to pay for it. We just can’t host it anywhere. We have to selfhost it. If there’s a good reason to use gitlab over forgejo, we will use gitlab.

      • poVoq@slrpnk.net
        link
        fedilink
        English
        arrow-up
        1
        ·
        edit-2
        3 months ago

        Gitlab’s main advantage is the tight integration with CI/CD and a web based IDE. But it has some annoying limitations in the non-enterprise version.

        Forgejo is great, but it comes with only community support.

        You can get commercial support from the Gitea project (from which Forgejo forked off), but if that is something important for you, Gitlab has probably also better commercial support structures in place.

        • swooosh@lemmy.worldOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          3 months ago

          Money is not an issue. We’re happy to pay for everything. I’ll talk to the others in the next round to get to a conclusion.