首页 > 解决方案 > 子分支中的 Git Rebase 和 squash

问题描述

我正在研究 git master 和 sub 分支。代码和子代码分支。

现在我在子代码分支和提交(完成 4 到 5 次提交)中进行了一次更改并推送子代码分支。

现在我想在我的子代码分支中只显示一个提交,但目前它显示了 5 个提交。

我已使用以下命令对提交进行 rebase。

git rebase -interactive HEAD~3 

然后像这样执行一些编辑。

pick 6336d7c Commit commit#1
pick 54e8a9b Commit commit#2
pick 39f1d2h Commit commit#3 

git rebase --continue

但它仍然向我展示了 5 次提交。有什么想法可以将所有提交压缩和变基为一个提交吗?

标签: git

解决方案


编辑器打开并显示所选提交后,更改picksquash. squash因此,如果您想将所有提交都提交到#1 ,它应该像这样:

  1. 选择 6336d7c 提交 commit#1
  2. 壁球 54e8a9b 提交提交#2
  3. 壁球 39f1d2h 提交提交#3

然后保存,退出编辑器,执行:

git rebase --continue

推荐阅读