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

如何将基于development分支创建的分支合并到master且不引入development代码

只合并开发分支中自有修改到Master分支

以下是两种可行的解决方案,根据你的提交数量选择即可:

方法一:使用git rebase --onto批量移植提交(适合多提交场景)

这种方式会直接把你在开发分支上的所有提交,从原development分支的基础上重新移植到master分支的最新版本,彻底剥离development的代码影响。

  1. 切换到你的开发分支(假设分支名为my-feature):

    git checkout my-feature
    
  2. 执行rebase移植提交:

    git rebase --onto master development my-feature
    

    命令逻辑:把my-feature分支中所有在development分支之后的提交,重新基于master分支构建。

  3. 处理可能出现的冲突:
    若rebase过程中出现代码冲突,Git会暂停操作并提示冲突文件。解决冲突后,执行以下命令继续rebase:

    git add .
    git rebase --continue
    

    若要放弃rebase,可执行git rebase --abort。

  4. 合并到master分支:

    git checkout master
    git merge my-feature
    
  5. (可选)如果你的开发分支已推送到远程,需要强制推送更新(注意:确保团队内无人在该分支协作):

    git push origin my-feature --force
    

方法二:使用git cherry-pick逐个挑选提交(适合少提交场景)

如果你的开发分支只有少量提交,可以手动挑选每个提交合并到master。

  1. 切换到master并拉取最新代码:

    git checkout master
    git pull origin master
    
  2. 列出你在开发分支上的所有提交(排除development分支的代码):

    git log --oneline development..my-feature
    

    输出结果里每一行开头的哈希值,就是你自己的提交ID。

  3. 逐个挑选提交到master:

    git cherry-pick <你的提交哈希1>
    git cherry-pick <你的提交哈希2>
    

    遇到冲突时,解决后执行git add .和git cherry-pick --continue即可。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.22 13:36:28