Stay away from rebase
There's an elephant in the room that he missed.Rebase breaks bisect.If you have a sequence of patches, wherein each patch compiles cleanly, and you merge it with another sequence of patches, you still have a sequence of patches that compiles cleanly.If however you rebase your sequence of patches onto another sequence, and this introduces build errors (not uncommon), bisect no longer works on this segment of history, even after you fix the build issues with a final "cleanup" patch.Rebase destroys semantic history.  Merge preserves it.EDIT: whomever downvoted me, care to explain what's wrong with my reasoning?