You need to enable JavaScript to run this app. 如何从另一分支更新Git分支且不修改目标分支的独有文件
优惠活动
大模型
产品
解决方案
定价
更多

如何从另一分支更新Git分支且不修改目标分支的独有文件

Git分支同步操作方案

方法1:使用merge操作(适合保留合并提交记录的场景)

  • 第一步:切换到docs分支
    git checkout docs
    
  • 第二步:执行带合并策略的merge命令,遇到冲突时优先保留docs分支的文件版本
    git merge -X ours master
    

    -X ours参数仅会在文件出现冲突时使用当前docs分支的内容,不会影响master分支新增、无冲突变更的同步,完全不会改动你在docs分支的独有文件。

  • 如果仅需要忽略指定的几个独有文件,不想所有冲突都优先用docs版本,可以按以下步骤操作:
    1. 先执行普通merge操作:git merge master
    2. 出现冲突后,对需要保留的docs独有文件单独恢复版本:git checkout --ours 独有文件的相对路径
    3. 所有冲突处理完成后,执行提交即可:git commit

方法2:使用rebase操作(适合保持docs分支提交线干净的场景)

  • 第一步:切换到docs分支
    git checkout docs
    
  • 第二步:执行rebase操作,同步master分支最新提交
    git rebase -X ours master
    
  • 若过程中需要单独处理指定文件,冲突时执行git checkout --ours 独有文件的相对路径,再执行git rebase --continue直到rebase流程完成即可。

可选:永久配置自动忽略独有文件冲突

如果后续需要频繁同步master分支更新到docs,可以配置规则让Git自动保留docs分支的独有文件版本,无需每次手动处理:

  1. 在仓库根目录创建.gitattributes文件,添加如下内容(替换成你实际的独有文件路径):
    docs专属文件1.md merge=ours
    专属目录/* merge=ours
    
  2. 开启本地配置:
    git config merge.ours.driver true
    

配置完成后后续所有merge操作都会自动保留docs分支的指定文件版本。

注意:以上所有操作仅会修改docs分支内容,不会对master分支产生任何影响,也不会将docs的独有文件合入master分支

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 05:54:04