最近在参加社区组织的文档捉虫活动,在提交 PR 的过程中,遇到了一个 PR 与主分支存在冲突的情况,下面记录一下解决方法,供大家参考。
【问题现象】
如下图,我提交的 PR 在检测完成后报了一个 conflict:
【问题原因】
经过我在解决这个冲突过程中的分析,原因在于:
- 主版本V3.1.3和我提交的 PR 涉及的文件存在不一致的情况;
- 上述问题是由于我在提交 PR 之前,没有刷新本地分支(这之前官方仓库应该是做过更新了,我本地的仓库不是最新的)
【解决方法】
官方给出的解决方案很好用,可以参考网址:https://docs.github.com/cn/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/about-merge-conflicts 以及网址:https://docs.github.com/cn/pull-requests/collaborating-with-pull-requests/addressing-merge-conflicts/resolving-a-merge-conflict-on-github 。
实际操作方法如下:
- 首先,我们点击下图的按钮:
- 此时,必然会看到存在冲突的内容,使用符号进行了标注和分割。如下图:
<<<<<<<
=======
>>>>>>>
我们需要做的就是确认要保留的内容是等号上面还是等号下面的内容,确认好后,把箭头符号和等号,以及多余的提示内容去掉。
- 然后,把所有的冲突都按照上面的步骤解决掉,并按照下图,标注:Mark as resolved
- 最后,点击:Commit Merge 即可,如下图: