by bradrobertson on 4/16/14, 2:52 AM with 16 comments
by golergka on 4/16/14, 5:26 AM
In the original commit before rebase everything seemed to be working; but someone changed something else in the code you were relying on without creating a direct conflict, and now all your rebased commits crash and burn. What's worse, you discover it much later, when original commits are long gone, and instead of one merge commit being the easy traceable breaking point, you now don't even quite remember which exact commits were rebased and have to check EVERYTHING.
Or, and with merge commit you could've easily just check it right there with simple tests before committing — no such convenient option for rebase.
The thing is, it's a leaky abstraction. Rebase workflow tries to present things simpler then they really are, and you end up paying a price for it.
by tunesmith on 4/16/14, 7:12 AM
Not sure why the author says that is weird - I can't think of an alternative if people are truly collaborating or pairing on a feature.
by azinman2 on 4/16/14, 3:46 AM
Are there any other useful ways to use git for a small team outside of pull and rebase? One thing that's bugged me is undoing (possibly partially) previous pushed commits while keeping everything past.
by klochner on 4/16/14, 6:07 AM
It's not that complicated - rebase applies your commits to another branch as if they were patches. Interactive rebase gives you the option of re-ordering/removing/editing those patches before they're applied.
by middleclick on 4/16/14, 4:19 AM