Maintaining a subsystem, as a general rule, requires a familiarity with the
Git source-code management system. Git is a powerful tool with a lot of
features; as is often the case with such tools, there are right and wrong
ways to use those features. This document looks in particular at the use
of rebasing and merging. Maintainers often get in trouble when they use
those tools incorrectly, but avoiding problems is not actually all that
hard.
Source: LWN.net – [$] Rebasing and merging in kernel repositories