• dbx12@programming.dev
    link
    fedilink
    arrow-up
    20
    ·
    10 months ago

    Review is done before code gets into main, but that’s inefficient for most of the non-mission critical projects out there. A better approach is to optimistically merge most changes as soon as not-rocket-science allows it, and then later review the code in situ, in the main branch.

    Assuming you have a project with continuous delivery, that is an absolute foot gun. Optimistically merge the change and then realize in situ that you forgot the WHERE part of your SQL command (or analog statement of the query builder)? No fucking thanks.

    • xoggy@programming.dev
      link
      fedilink
      arrow-up
      1
      ·
      edit-2
      10 months ago

      A better approach is to optimistically merge most changes as soon as not-rocket-science allows it, and then later review the code in situ, in the main branch.

      I upvoted before reviewing the article in situ, then I had to go back and fix my upvote.

  • Kache@lemm.ee
    link
    fedilink
    arrow-up
    20
    ·
    edit-2
    10 months ago

    A title as uninformative as the single . commit messages he suggests writing.

    Bare minimums of typo, refactor, whitespace, comments are barely any effort – less than the thought it takes to name variables and functions.

    I really can’t agree with completely meaningless messages like minor and .

    • TechNom (nobody)@programming.dev
      link
      fedilink
      English
      arrow-up
      3
      ·
      10 months ago

      Git is a lot of things at once:

      1. A tool to record development history - warts and all
      2. A tool to create a logical sequence of changes
      3. A tool to communicate intent and ideas to a maintainer

      Meaningless messages like minor and . don’t suit any of these roles - not even 1. Even when recording development history with all mistakes, you’d still need context when you look back at the history. Matklad is a well respected developer. I wonder why he’s make such a bizarre claim.

  • snowe@programming.devM
    link
    fedilink
    arrow-up
    5
    ·
    10 months ago

    That’s why for typical project it is useful to merge pull requests into the main branch — the linear sequence of merge commits is a record of successful CI runs, and is a set of commits you want to git bisect over.

    … if you do this you completely negate your ability to use git bisect…

    • themusicman@lemmy.world
      link
      fedilink
      arrow-up
      2
      ·
      10 months ago

      Quite the opposite. If you fast forward merge without squashing, you lose the ability to meaningfully bisect, since only the head of each merge is checked by CI - other commits may not even build

      • snowe@programming.devM
        link
        fedilink
        arrow-up
        1
        ·
        10 months ago

        My point was about merging in general. Unless you’re either

        1. Making sure every single commit builds
        2. Squashing and merging, with no merge commit

        Then you’re not going to be able to effectively use git bisect.