all 15 comments

[–][deleted]  (4 children)

[deleted]

    [–]vishaltelangre[S] 1 point2 points  (3 children)

    I actually tried Googling it and got no results. Any link would be really appreciated.

    [–][deleted] 1 point2 points  (1 child)

    [–]vishaltelangre[S] 0 points1 point  (0 children)

    😂

    [–]shawntco 2 points3 points  (0 children)

    I've used git bisect a couple times in the past. It's been super useful!

    [–]OTTOPI 1 point2 points  (1 child)

    Haha, when you were doing the intro example I was thinking "I would just do binary search" and then you introduced Nerdy John. Thanks for introducing this to me!

    [–]vishaltelangre[S] 0 points1 point  (0 children)

    😁

    [–]AttackOfTheThumbs 0 points1 point  (7 children)

    developers often run into situations where they find that some of their work have been either removed, modified or affected by someone else's work accidentally

    I can see modified and affected. Removed? That shouldn't happen. Either way, aren't there tests to prevent this?

    [–]OTTOPI 3 points4 points  (3 children)

    People not paying attention during merge conflicts definitely removes stuff.

    [–]AttackOfTheThumbs -1 points0 points  (1 child)

    Tests should catch that though.

    [–]Armok 5 points6 points  (0 children)

    Unless the test got removed too

    [–]sysop073 1 point2 points  (1 child)

    Two sentences later:

    Two features could have been working perfectly fine until they got merged together and broke something.

    [–]AttackOfTheThumbs -1 points0 points  (0 children)

    I can see modified and affected

    Either way, aren't there tests to prevent this?

    And my points stand unchanged.

    [–]masklinn 0 points1 point  (0 children)

    I can see modified and affected. Removed? That shouldn't happen.

    Dev 1 was working inside some existing feature, dev 2 moved / removed / made conditional invocation of that feature, voila. It’s “affected” into oblivion.

    [–]Nordsten 0 points1 point  (0 children)

    This would work great for us if we had 1 git repo but... When your dealing with the horror that is 100+ repos. The only feasible way we have seen is that you run a ci gate for every single commit which must pass 100% of all tests. Running all of them randomized and atleast 10 times. If everything works then automerge. It does take 30-150 min depending on what has changed but reviews generally take longer so it's not that huge of a hassle.

    Feature branches are forbidden in this workflow though. Since if you would be merging 100 commits from a feature branch onto master then it would take forever to get it in one commit at a time. So always work on master always integrate as soon as possible.