Generally, Linux kernel source trees are maintained using two basic tools,
git and quilt. While it is true that you can also use some
git ''frontends'', like Cogito, Stacked GIT,
Patchy Git (pg), (h)gct, which simplify user interactions
with this tool, we will focus on git itself and on quilt, since
each of them is strictly related to a specific way of maintaining a source tree.