【问题标题】:Cannot resolve GitHub conflict in PR无法解决 PR​​ 中的 GitHub 冲突
【发布时间】:2015-10-26 22:37:35
【问题描述】:

我在 GitHub 存储库中有一个 PR(另一个是他的 PR),由于冲突而无法合并。

我能做些什么来自己解决这些冲突?

我尝试了以下方法:

  1. 从 PR 创建新分支
  2. 结帐、拉取和合并主文件
  3. 手动修复冲突。大量工作。
  4. 在本地测试它,它可以工作。 :)
  5. 暂存所有文件git add .
  6. 提交并推送
  7. 创建一个新的 PR
  8. 然后仍然是消息“此分支存在必须解决的冲突”。

我做错了什么?本地一切正常,git status 报告:

在分支 branch2 你的分支是最新的'origin/branchX'。

没有什么要提交的,工作目录干净

PS:如果我重做“合并大师”,所有的冲突都回来了。不要得到这个。

【问题讨论】:

    标签: git github merge git-merge-conflict


    【解决方案1】:

    通常的工作流程是:

    • 确保您拥有来自upstream 的最新masterupstream 是远程引用a triangular workflow 中原始存储库的名称)

    git fetch upstream
    

    然后你创建你自己的分支(在你自己的 fork 中,你从另一个 fork 获取 PR 分支)

    git checkout -b branch2 otherfork/PRbranch
    

    而你upstream/master 之上重新设置该分支

    这是关键:不合并:仅变基,这样,您将解决冲突,branch2 的生成历史将是upstream/master 之上的额外提交,这将使 PR 成为一个简单的快进在原始存储库(upstream 之一)中应用(合并)到 master 时合并。

    【讨论】:

    • 你能解释一下为什么合并不起作用,以及我如何在不重做所有事情的情况下解决我目前的情况吗? (当前状态 = 与 master 合并并修复了冲突,所以第 5 步)
    • @Julian 你仍然需要一个变基,但是这一次,你可以通过保留你的版本 (stackoverflow.com/a/8566376/6309) 来解决任何冲突(实际上,保留“他们的”,因为变基会切换我们和他们的版本) :stackoverflow.com/a/3052118/6309)
    猜你喜欢
    • 2015-05-07
    • 2012-10-24
    • 2012-01-09
    • 2021-10-24
    • 2018-08-21
    • 1970-01-01
    • 1970-01-01
    • 2022-10-14
    • 2019-05-26
    相关资源
    最近更新 更多