想要自动压缩20次提交

时间:2013-05-24 16:47:30

标签: git squash

我的主题分支在我分支的地方之前大约提交了20个。

我想自动将所有这些提交压缩到第一次提交中 分支后。

我知道我可以用rebase交互式地做这件事,但我不想互动,只是开火 关闭命令。

2 个答案:

答案 0 :(得分:4)

你可以这样做:

git reset --soft HEAD~20
git commit -m "massive commit"
  • 第一个命令移动你的主题分支20提交回来,但是 保留索引(和工作树)中的更改
  • 然后你创建一个包含所有的提交 变化。

找到要重置的确切提交的快速方法是执行

git merge-base <topicbranch> <otherbranch>

如果输出为<commit-ish>,则可以执行

git reset --soft <commit-ish>

答案 1 :(得分:0)

为什么不查看原始分支,git merge --squash <other branch>

然后,git commit将为您提供编辑组合提交消息的机会。