如果远程主仓库的历史 Commits
被修改整理过,而自己在未同步远程主仓库的情况下有新的 PR
需要提交,可以有两个方案处理:
Fork
最新的远程主仓库,重新提交 1.1 备份自己的改动 1.2 删除自己的Fork
的仓库,重新Fork
远程主仓库 1.3 将最新改动的应用到新Fork
的仓库,然后提交PR
- 强制同步远程主仓库的所有历史
Commits
,处理冲突,再次提交(适用于上次更新后自己所做的改动不大;或改动大但与源冲突少) 2.1 备份自己的改动(可以选择用一个新的分支或者直接将问题复制到本地存储的其他文件目录) 2.2 添加远程主仓库为自己本地仓库的一个upstream
(如命名为origin
),使用以下命令强制同步git fetch origin && git reset --hard origin/master && git clean -f -d
2.3 将自己的改动应用到强制同步过的分支,如果使用的其他分支备份,可以使用rebase
命令合并过来,如果有冲突,处理冲突 2.4 检查自己的Commits
是否正确合理,无问题则可重新提交PR