Git でトピックブランチを統合ブランチにマージする直前、最新の統合ブランチの先端にrebaseしたうえで FF (Fast-forward)マージすることで、見かけ上の履歴は一直線になる。 このような一直線の履歴が「わかりやすい」と解説されていることが多いんだけど、これは本当だろうか? 実は、このような見かけだけ「一直線」の履歴はむしろトピックの範囲が不明確になるのでわかりにくいんだ。 rebase && FF マージする理由としてよく挙げられるのが「マージコミットがあると log で見た時に履歴が入り乱れてわかりにくい」というものなんだけど、 これは明確な誤りだ。 マージコミットを含んだ統合ブランチにおいてファーストペアレントが常に統合ブランチ側になるようにマージしていれば[※]、 [※] これは「統合ブランチ側をcheckoutして git merge <topic> でトピックをマ