• meliaesc@lemmy.world
      link
      fedilink
      arrow-up
      1
      ·
      1 year ago

      Merging conflicts will be an issue no matter what you’re working on. Maintaining different sets of code bases based on the version/release will be an issue even when working alone.

      • Immersive_Matthew
        link
        fedilink
        arrow-up
        1
        ·
        1 year ago

        Can you describe a situation that underscores this issue as I am not seeing it, but maybe I experience it and do not even realize.

        • meliaesc@lemmy.world
          link
          fedilink
          arrow-up
          1
          ·
          edit-2
          1 year ago

          Situation: You’re building some software to display emojis based on user input.

          Current code: when user types “happy”, output 🙂

          • Your new requirement: when user types “happy”, output 😃 instead of 🙂
          • Coworker’s new requirement: when user types “sad”, output 😭

          You implement your change, back it up, and the new version with 😀 is released. But it turns out 😃 is the ultimate insult in the Snowflake region, and you need to immediately rollback 😃 back to 🙂 while you find an alternative.

          Meanwhile, Coworker has added 😭 to your backup, which still has 😃. Now when you try to rollback to 🙂, Coworker’s code gets erased. Now your code is unable to safely support both 😭 with 🙂 without starting over entirely. Maybe you want to disable 😀 only for the Snowflake region, but that’s not possible either without harding coding the regions instead of just changing the deployment.

          Now imagine working with a team of 10 people, or a company with 100 people working on this same software. With features and release dates constantly changing.

          • Immersive_Matthew
            link
            fedilink
            arrow-up
            1
            ·
            1 year ago

            I would agree with more people these tools become more needed, but I am talking about a solo dev situation who is the only person who accesses the code base. All other contributors I carefully import.