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

如何解决从复刻仓库发起的拉取请求中的合并冲突

解决Pull Request冲突的实操步骤

嘿,别慌,这种合并冲突的场景太常见了,我给你一步步捋清楚怎么操作:

首先,先确认你的本地仓库已经关联了原仓库(original repo)作为远程上游——毕竟你是复刻的仓库,默认应该已经有了,但咱们先检查确认下:

  • 打开终端,进入你的本地仓库目录,运行:
    git remote -v
    你会看到两个远程源:origin是你自己的复刻仓库,upstream应该指向原仓库的地址。如果没看到upstream,那先手动添加:
    git remote add upstream <原仓库的Git地址>
    把<原仓库的Git地址>替换成你当初复刻的那个仓库的实际地址就行,比如https://github.com/xxx/original-repo.git

接下来,把原仓库的最新代码拉到你的my changes分支:

  • 先切换到你的分支(如果分支名有空格,记得加引号):
    git checkout "my changes"
  • 然后拉取原仓库默认分支(一般是main,如果是老项目可能是master)的最新代码:
    git pull upstream main
    这里如果原仓库的默认分支不是main,换成对应的分支名就行。

这时候Git会自动尝试合并,有冲突的话会直接告诉你哪些文件出问题了。接下来就是手动解决冲突:

  • 打开冲突文件,你会看到Git标记的冲突块:
    <<<<<<< HEAD
    你在my changes分支里写的内容
    =======
    原仓库main分支的最新内容
    >>>>>>> upstream/main
    
  • 你需要编辑这些文件,保留正确的内容,删掉这些冲突标记,然后保存。

解决完所有冲突后,提交并推送改动:

  • 把处理好的文件加入暂存区:
    git add .
  • 提交改动:
    git commit -m "Resolve merge conflicts with upstream main"
  • 最后推送到你自己的复刻仓库:
    git push origin "my changes"

这时候你再回到原仓库的Pull Request页面,就能看到冲突已经解决,维护者就能正常合并你的改动啦!

内容的提问来源于stack exchange,提问作者four-eyes

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 04:13:27