我有一个包含以下日志的项目
commit10
commit09
commit08
commit07
commit06
commit05
...
commit01
我希望将01到08的转换提交只提交一次。我想要的结果是
commit10
commit09
commitXX
其中提交消息类似于“初始提交”或类似内容。我怎么能做到这一点?
答案 0 :(得分:1)
使用git rebase
命令,或以git rebase -i
交互式(这很好)。特别是,这将是一个“壁球” - 将一些提交与其他提交相结合。
此处,执行此操作的最佳方法可能是:git rebase -i HEAD~10
查看最近的10个提交。然后,您可以使用交互式提示选择's'quash
和'p'ick
哪些(即保留)。
在您的情况下,这可能如下所示:
p SHA10 commit10
p SHA09 commit09
s SHA08 commit08
s SHA10 commit07
...
s SHA01 commit01
然后它会提示您更改提交消息 - 如果您愿意。
如果要撤消您的rebase,请使用git reset --hard ORIG_HEAD
--- rebase将以前的状态保存到ORIG_HEAD
。