| > Since moving to this workflow I’ve had zero issues losing data due to a confusing git situation. Nobody who understands git will ever lose data, because once committed you can never lose it (it's in the reflog). Indeed, even just adding a file means you will never lose it, although it's not as convenient as having an actual commit. So yeah, you kind of revealed the anti-rebase case quite tellingly there. It's for people that understand git so poorly that they regularly shoot themselves in the foot and lose work or make other similar mistakes. > Most of the arguments in favor of rebase are by people fanatical about having a git history organized just so. It’s not worth the headache and effort. PRs are a better unit of work than commits in practice. PRs and good git commit history are not mutually exclusive. But there are many drawbacks of trying to make PRs themselves your source of truth. A big one being that it's not actually stored in git, so if you ever migrate from github to gitlab or some other system, that context is gone. > Configure GitHub or whatever you use to squash merge only and you’ll be good. See, now this becomes even more absurd. What's your fear of rebasing if you're going to do the equivalent of a `git rebase -i` upon every merge anyway? This is a very confusing and nonsensical ideology. For those who want to improve their grasp of git, I highly recommend https://git-scm.com/book/en/v2. That book changed the game for me, because I finally understood how to visualize git history in terms of the DAG, and furthermore learned about how git actually works under the hood (blobs and the like) which made me confident I would never lose anything I've ever added/committed ever again. |
Request is committed to the repo on acceptance. Closed are typically useless.
> What's your fear of rebasing if you're going to do the equivalent...
The system takes care of the details without incidental complexity or errors.
> This is a very confusing and nonsensical ideology.
Pretty simple, folks are trying to get shit done. Not screw around with tools. One or two clicks where someone else did the hard work correctly wins every time.
From today, design is important:
- https://www.ncsc.gov.uk/blog-post/so-long-thanks-for-all-the...
- https://news.ycombinator.com/item?id=33531560