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

管理WordPress站点时Git合并遇400个重命名冲突,如何快速以上游分支解决?

快速解决Git合并中大量rename/rename冲突(以上游版本为准)

我太懂这种几百个冲突扑面而来的崩溃感了——批量更新上游仓库后,子站点的插件版本不一致导致一堆重命名冲突,而且你明确知道要完全用上游版本覆盖对吧?别慌,下面的步骤能帮你一键式搞定,不用逐个手动处理:

前置准备

首先确保你在子站点的工作分支上,并且已经拉取了上游仓库的最新代码:

  • 拉取上游更新:git fetch upstream
  • 如果之前尝试合并失败了,先重置到合并前的干净状态:git merge --abort

方法一:合并时直接指定上游优先(推荐)

这是最省心的方式,直接在合并命令里告诉Git:所有冲突都选上游的版本。

假设你的上游远程名为upstream,要合并的分支是main,执行这条命令:

git merge upstream/main -X theirs

这里的-X theirs参数是关键——它会让Git自动处理所有冲突(包括rename/rename这种情况),直接采用上游分支的文件版本,完美匹配你“上游覆盖本地”的需求。

方法二:已产生冲突后的批量解决

如果已经触发了合并冲突,不想重新走合并流程,也可以批量处理:

  1. 用上游版本覆盖所有冲突的插件文件:
    git checkout --theirs -- wp-content/plugins/*
    
    (把wp-content/plugins/*换成你实际的插件目录路径,如果冲突只涉及单个插件,就写具体的插件文件夹路径)
  2. 将处理好的文件添加到暂存区:
    git add wp-content/plugins/*
    
  3. 完成合并提交:
    git commit
    
    (Git会自动生成合并提交信息,你可以直接保存)

验证结果

合并完成后,用下面的命令确认所有冲突都解决了:

git status

如果显示nothing to commit, working tree clean,就说明没问题了。也可以对比本地和上游的插件目录差异,确保是上游的版本:

git diff upstream/main -- wp-content/plugins

小技巧:给常用操作加别名

如果你经常需要做这种以上游为准的合并,可以给Git加个全局别名,以后用起来更方便:

git config --global alias.merge-upstream 'merge -X theirs'

之后直接执行git merge-upstream upstream/main就能完成同样的操作啦。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.26 10:28:12