You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用git merge --squash压缩提交无效,求非变基的解决方法

解决Git合并压缩提交无效果的问题

你执行git merge --squash后没有效果的核心原因是:这个命令不会自动创建提交,它仅将featureBranch分支的所有修改内容合并到当前分支的工作区和暂存区,不会生成新的提交记录,直接push自然不会有任何远程仓库的变化。

按照以下步骤操作就能完成需求:

  1. 切换到main分支:
    git checkout main
    
  2. 确保本地main分支与远程同步(你提到已执行pull/fetch,可再次确认):
    git pull origin main
    
  3. 执行压缩合并:
    git merge --squash featureBranch
    
  4. 手动提交合并后的修改(自定义提交信息,说明是压缩合并的内容):
    git commit -m "合并featureBranch的修改(压缩为单个提交)"
    
  5. 推送到Bitbucket远程仓库:
    git push origin main
    

注意事项

  • 如果执行merge --squash时出现冲突,先手动解决文件冲突,再执行git add .将冲突文件加入暂存区,之后再执行git commit。
  • 这种方式不会生成任何合并相关的记录,最终只会在main分支上新增一个包含featureBranch所有修改的单个提交,完全符合你“移除合并相关内容”的需求。

内容的提问来源于stack exchange,提问作者Kratos

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 22:10:39