如何创建仅含代码变更、不含个人分支冗余提交的Git新分支
干净转移分支代码的两种高效方法
针对你这种个人分支充斥无用提交、需要把最终代码移到bug分支的场景,这两种方法简单直接:
方法一:压缩合并(推荐,保留变更逻辑)
- 先切到
develop拉最新代码:git checkout develop git pull - 基于最新
develop建bug分支:git checkout -b bug/xxx-fix - 把个人分支的所有变更打包成一个干净提交:
git merge --squash your-personal-branch - 此时所有修改都在暂存区,检查完代码后提交一个清晰的说明:
git commit -m "fix: 修复xxx问题(补充具体说明)"
做完这步,bug分支的提交历史就只有这一条干净记录,完全不带个人分支里的无用提交。
方法二:直接覆盖(快速搞定)
如果不需要保留任何提交拆分,只想把个人分支的最终代码搬过去:
- 同样先拉最新
develop并创建bug分支:git checkout develop git pull git checkout -b bug/xxx-fix - 把个人分支的所有文件直接覆盖当前bug分支:
git checkout your-personal-branch -- . - 提交即可:
git add . git commit -m "fix: 修复xxx问题"
小提醒
操作前最好给个人分支整个备份:
git checkout your-personal-branch git branch your-personal-branch-backup
防止手滑搞丢代码。
内容的提问来源于stack exchange,提问作者dsollen
相关产品推荐
相关产品推荐

