PR中被评审者添加Commit后本地无法拉取,手动修改引发中止报错
解决本地修改与远程PR新Commit冲突的问题
给你几个实用的解决办法,按需选择:
方法一:暂存本地修改,拉取后再恢复(推荐保留本地修改时用)
- 先把本地未提交的修改暂存起来:
git stash - 拉取远程PR分支的最新代码(替换成你的远程名和分支名,比如
origin feature/my-pr-branch):git pull origin <你的PR分支名> - 恢复刚才暂存的修改:
git stash pop - 这时候Git会提示冲突,打开冲突文件,找到
<<<<<<<、=======、>>>>>>>这些冲突标记,手动调整代码(保留你需要的部分,删掉标记) - 解决完所有冲突后,执行
git add <冲突文件名>,再git commit提交合并后的结果
方法二:直接合并远程代码,即时处理冲突
- 拉取时强制用合并模式(避免默认rebase导致的中止):
git pull origin <你的PR分支名> --no-rebase - 出现冲突后,手动修改冲突文件的内容,清理冲突标记
- 确认所有冲突解决后,
git add .(或指定单个文件),然后git commit完成合并
方法三:放弃本地修改,直接同步远程最新代码(仅当本地修改不需要保留时用)
- 先清空本地未提交的修改(此操作不可逆,谨慎执行):
git reset --hard HEAD - 拉取远程PR分支的最新代码:
git pull origin <你的PR分支名>
注意事项
- 处理冲突时一定要仔细核对代码逻辑,确保合并后的代码符合预期
- 如果你的仓库是fork的上游仓库,需要先把上游仓库的PR分支同步到你的远程仓库,再执行拉取操作
内容的提问来源于stack exchange,提问作者someone
相关产品推荐
相关产品推荐

