かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

GitHub PR のコミット順がローカルの log と違う件

git rebase--fixup--squash したり、コミット順を入れ替えたりしたブランチで PR を出すと、PR内や Commits タグで表示されるコミットの並び順がローカルのリポジトリgit log --oneline で表示した順番と違っていることがありました。

GitHub の PR のコミットは日付順で並ぶ

GitHub の PR に表示されるコミットは日付順で並ぶらしく、特に rebase で順番を入れ替えたりしてもコミットした日付が残っているので、PRでは元の日付順に表示されてしまうのが原因だったようです。

--ignore-date オプションを使う

--ignore-date オプションを使って rebase すると日付がリセットされ、GitHub の PR に表示されるコミット順がローカルと同じになります。

$ git rebase --ignore-date <commit hash>

ただ、git log してみている限りコミットした日自体がリセットされるので作業した日のログ的なものとしてはダメになりそうです。もしかしたら内部的に残っているのかもですがチョット確認しきれてません。


[参考]

入門git

入門git