ぱっと調べてよく出てくるのは下記のようにwhatchanged
で見る方法
git whatchanged --since="2022-04-29" -p
ただ、上記方法だとコミットが別れた状態になっている
ざっくり期間を絞ってどんな差分があったか把握したいときは次のようにコマンドを組み合わせる
- 2022-05-01以降の差分を見る
git diff $(git log --before "2022-05-01 00:00:00" --oneline | head -n 1 | awk '{print $1}')..HEAD
2022-05-01に入った変更も含め2022-05-01以降の差分を出すコマンドとなる
まず2022-05-01 00:00:00
以前で最初のコミットのSHA-1を取り出している
そのコミットのSHA-1と現在のHEADを比較すれば指定日以降の差分をまとめて表示できる
余談
git log
のオプションで--after
,--since
,--before
,--until
などあるが
日付のみ指定した場合
--after
,--since
は当日を含まない--before
,--until
は当日を含む
という挙動だった(2.36.1時点)
自分は2022-05-01
に入った変更も含めたいと感じたので結局2022-05-01 00:00:00
と指定して厳密に2022-05-01に入った修正もdiffの対象とすることにした
この辺の日付の扱い難しい…