Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

I agree. I decided years ago that that was a lot of work for little or no benefit.

It's enough for the tests to pass at each merge point.



I would say most workplaces have settled similarly.

Sit in draft until you're ready to use the CI - which you verified locally or run manually in draft, before convert to reviewable - then review, maybe tweak, merge.

Atomic commits would endanger me losing unfinished work or eventual dead-ends with no record. This seems inefficient.


…and that’s why squash merge should be the default setting in PRs.


Yes, it should be the default, but ideally you have the option of preserving history (for PRs where that makes sense) and then your CI/CD should also check that the individual commits build and pass tests.

In general, your CI/CD should make sure that each commit that appears in the 'public' history of main builds and passes tests.


You can `git bisect --first-parent` just fine without needing to squash.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: