我所提供的回购使用了基于GitHub的分叉/重基模式。我觉得我错过了一个概念,因为我没有得到预期的结果。目前,我的公关说它不能合并,因为有一个冲突,然而,似乎没有提交在dev
分支中,不存在于我的。
我在此所采取的步骤如下:
此时,我从一条AppVeyor消息中得到以下错误:
This pull request contains merge conflicts that must be resolved.
建议是“用最新的开发,重新建立你的公关基础。”
因此,在我的分支中,我执行了以下两个命令,从上游更新(aspnet),然后将我的分支从dev重新定位:
git fetch aspnet
git rebase aspnet/dev
我期望我的分支包含来自aspnet/dev的所有提交,然后是我的提交。相反,我的更改似乎出现了两次,在它们之间出现了另一次提交(so...there没有什么可合并的),我在本地没有冲突,我已经进入了以下状态:
现在,我的变化并不是很大--仅限于一个文件--我很可能只是对PRs进行核弹,然后重新开始,但我想了解我做错了什么,以及做错了什么“正确”的方法。
这是问题中的PR:#24机密文件的重构清除
有什么办法可以解决我的问题,这样公关才能合并吗?
是否有更好的流程可供遵循,以使重基正确工作?
发布于 2015-07-08 05:42:12
好吧,我有几件事要做。
首先,aspnet/dev
和我的分叉dev
不同步。为了让它们同步,我做了以下工作:
git fetch aspnet
git checkout dev
git rebase aspnet/dev
git push
接下来,我又回到了我的分支,清理了所有的东西,然后强迫我去做回购/公关:
git checkout misterjames/clear-corrupt-secrets
git rebase -i dev
git push -f
在交互重基期间,我将所有提交压缩为一个单独的提交。
感谢@david-paquette给出的解决这个问题的建议。
https://stackoverflow.com/questions/31292573
复制相似问题