开发分支合并到测试分支,只保留一个commit记录?最不容易出现问题的方法
尝试了 git merge --squash,想知道rebase怎么操作
开发分支合并到测试分支,只保留一个commit记录?最不容易出现问题的方法
尝试了 git merge --squash,想知道rebase怎么操作
要将多个commit合并为一个,并使用rebase操作,你可以按照以下步骤进行:
HEAD~
开始的三个commit。git rebase -i HEAD~3
命令来启动交互式的rebase。这将打开一个编辑器,列出你想要合并的commit。pick
单词。选择你想要保留的commit,并将其前面的pick
改为squash
或s
。对于其他不想保留的commit,你可以将其前面的pick
改为drop
或d
。git push -f
命令强制推送到远程仓库。但请注意,强制推送会覆盖远程仓库的历史,所以请确保你和你的团队成员都了解这一点。注意:
git rebase
时,你正在修改提交历史。这意味着如果你已经推送了这些commit,并且其他人也在基于这些commit工作,那么他们可能需要重新同步他们的工作。使用git rebase
来合并多个commit为一个通常比git merge --squash
更强大和灵活,但也需要更多的注意和谨慎。
2 回答1.2k 阅读✓ 已解决
1 回答3.8k 阅读
2 回答841 阅读✓ 已解决
1 回答654 阅读✓ 已解决
1 回答813 阅读
1 回答626 阅读
214 阅读
rebase
也有squash
操作的,可以合并到上一个 Commit 上,自己选择处理就好了。但是开发分支合并到测试分支为啥要合并成一个 Commit?后面如果有变更再合并不是得解决一堆冲突。