Open4
Git の Merge戦略・方法について (Squash Mergeなど)

GithubのWebからのマージ
- GithubでPull requestをいただいてマージしようとすると以下の3種類が表示されます。
- Create a merge commit
- Rebase and merge
- Squash and merge

Squash Merge の採用事例・メリットなど
- Sqash Mergeは、特定のブランチに含まれる複数のコミットを1つのコミットにまとめて、別のブランチにマージすることを意味します。
Squash Mergeをなぜ利用するのか?
4つの理由があります。
- mainブランチの履歴がきれいになる
- revert時の問題が発生しにくくなる
- コンフリクト解消の作業が楽になる
- commitメッセージをいちいち気にしなくて良い(Pull Requestのタイトルは気にして欲しい)

Squash Merge をやめた話・デメリットなど

Squash and merge のメリット
- コミット履歴の簡素化
- 複数の小さなコミットを一つにまとめることで、履歴がスッキリする
- 後から変更履歴を追いやすくなります
- レビューの容易さ
- 変更が1つのコミットにまとめられる。
- レビュアーが変更内容を理解しやすくなります 。
- マージの簡素化
- 複数のコミットを1つにまとめることで、マージ時のコンフリクトを減らし、プロセスを効率化できる。
Squash and merge のデメリット
- コミットの粒度の喪失
- すべての変更が、1つのコミットに統合されるため、各変更の意図や経緯が追跡しづらくなる可能性があります。
- マージ後の操作の違い:
- Squashによるマージを使用した後、revertする場合に通常のマージコミットとは違う操作が必要になる場合があります。