What "linear" means
A linear history has no merge commits - every commit has exactly one parent, and the history is a single line from the initial commit to HEAD. Bisect runs cleanly, blame is unambiguous, and git log reads top-to-bottom like a chronological narrative.
Why linear matters
Each merge commit complicates blame, bisect, and revert. With a linear history: