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

如何在Git合并分支时对指定文件夹使用--ours策略?

Git合并时指定文件夹使用ours策略的实现方法

Git本身不支持git merge board-b --ours=./bsp这种直接指定路径的参数,但可以通过两种方式实现你要的效果——合并时强制保留当前分支(board-a)的bsp文件夹内容,同时生成合并提交:

方法一:单次合并手动处理

  • 先执行合并操作,允许冲突产生:

    git checkout board-a
    git merge board-b
    

    此时bsp文件夹会出现冲突标记,其他文件若有冲突也会同步显示。

  • 用当前分支的bsp内容覆盖工作区和暂存区:

    git checkout HEAD -- ./bsp
    
  • 标记bsp的冲突已解决:

    git add ./bsp
    
  • 处理其他文件的冲突(如果存在),最后完成合并提交:

    git commit
    

方法二:通过配置永久生效

如果希望后续所有合并操作都自动对bsp文件夹应用ours策略,可以修改Git属性:

  • 在board-a分支中创建或编辑.gitattributes文件,添加一行:

    bsp/ merge=ours
    
  • 提交这个配置文件:

    git add .gitattributes
    git commit -m "Configure bsp folder to use ours merge strategy"
    
  • 执行合并,Git会自动保留当前分支的bsp内容:

    git merge board-b
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.21 13:34:57