在处理补丁时,我希望提供一组干净的提交。因此,我经常发现自己在提交集干净并准备好合并之前反复重写历史记录。
在这个过程中,在收到审稿人的意见后,我会回去rebase -i
修复我的代码,修复提交消息等。每次创建一个新的修订提交来替换之前的提交。先前的提交仍然存在,但不再是修订历史的一部分。
经过几次历史重写迭代后,我终于得到了一个干净的修订提交集,我可以推送或转换为补丁集。但现在我有时喜欢回顾一下我对一个或一组提交所做的更改历史,看看我在这个历史重写过程中做了什么。
我可以手动跟踪它——在某个地方写下我正在编辑的每个提交的提交哈希,然后再重写它。这样我可以回顾历史重写的历史,但这很乏味且容易出错。
有没有办法自动化这个,让 git 自己跟踪“二阶”历史——历史重写的历史?获取一个git log'
提交,以显示历史上为生成该提交而执行的所有“修改”操作?