• Facebook does not use Git due to scale issues with their large monorepo, instead opting for Mercurial.
  • Mercurial may be a better option for large monorepos, but Git has made improvements to support them better.
  • Despite some drawbacks, Git usage remains dominant with 93.87% share, due to familiarity, additional tools, and industry trends.
  • Treczoks@lemmy.world
    link
    fedilink
    arrow-up
    3
    ·
    4 months ago

    What kind of RCS is used always depends on the organisation. We are actually using GIT and SVN, and both make sense for the departments that are using them.

    • x1gma@lemmy.world
      link
      fedilink
      arrow-up
      13
      ·
      4 months ago

      Serious question, why do they use SVN, as in what does SVN better than Git for the department using it?

      • Mikina@programming.dev
        link
        fedilink
        arrow-up
        9
        ·
        4 months ago

        While I’m not using it, since we started our small-team hobby project in git and moving away from it would be a bother, there is one use-case of SVN that would save us a lot of headaches.

        SVN being centralized means you can lock files. Merging Unity scenes together is really pain, the tooling mostly doesn’t work properly and you have no way how to quickly check that nothing was lost. Usually, with several people working on a scene, it resulted in us having to decide whose work we will scratch and he will do it again, because merging it wouldn’t work properly and you end up in a situation where two people each did hundreds or thousands of changes to a scene, you know that the Unity mergetool is wonky at best, and checking that all of those changes merged properly would take longer and be more error prone than simply copying one persons work over the other.

        We resorted to simply asking in chat if anyone has any uncommited work, but with SVN (or any other centralized VSC, I suppose) we wouldn’t have to bother with that - you simply lock the scene file and be safe.

        • FizzyOrange@programming.dev
          link
          fedilink
          arrow-up
          6
          ·
          4 months ago

          Git LFS does actually support file locking. But in general I find LFS to be hackily pasted onto Git and not very good (as with submodules).

        • x1gma@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          4 months ago

          Right, completely forgot that locking exists in SVN, and I guess it definitely makes sense if you’re collaboratively editing unmergeable files.

          Thanks!

      • Treczoks@lemmy.world
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        SVN has the big advantage of serialized revision numbers. Which is essential for out build- and release-system.

      • leds@feddit.dk
        link
        fedilink
        arrow-up
        1
        ·
        4 months ago

        SVN admin here:

        • easy to partial checkouts, no need to clone entire repo
        • euuuh…
        • much simpler for non developers that need version control e.g. engineers