Comment by croemer

17 hours ago

What if the shared place is the place where you run a bunch of CI? Then you push your work early to a branch to see the results, fix them etc.

You can do whatever you want with stuff nobody else looks at. I do too.

I meant "shared place" as an open review request or a shared branch rather than shared underlying infrastructure. Shared by people's minds.

You can always force-push a cleaned up version of your branch when you are ready for review, or start a new one and delete the WIP one.

  • You can, but instead you can also just squash merge in one click. And avoid that people merge there dozens of fixes if you allow anything but squash merge.

  • I hate (and fear) force-pushing and "cleaning up" git history as much as other people dislike squash-merging =)

    It just feels wrong to force push, destroying stuff that used to be there.

    And I don't have the time or energy to bisect through my shitty PR commits and combine them into something clean looking - I can just squash instead.

    • Nothing is destroyed by a force push. It just overwrites a single pointer, and even keeps its old value in reflog.

      Things that aren't referenced by anything anymore will eventually get garbage collected and actually destroyed, but you can just keep a reference somewhere to prevent that from happening if you need. Or even disable garbage collection completely.

      Looks like people's fears about git come just from not knowing what it does.

      1 reply →