我的主题分支在我分支之前大约有 20 个提交。
我想自动将所有这些提交压缩到分支之后的第一个提交中。
我知道我可以使用 rebase 交互地执行此操作,但我不想交互,只需触发命令即可。
你可以这样做:
git reset --soft HEAD~20
git commit -m "massive commit"
找到要重置的确切提交的一种快速方法是
git merge-base <topicbranch> <otherbranch>
如果那个输出是<commit-ish>
,那么你可以做
git reset --soft <commit-ish>
为什么不直接检查您的原始分支,并且git merge --squash <other branch>
?
然后,git commit
您将有机会编辑合并的提交消息。