我发送了一个PR,其他人进行了一些更改,因此它还有3次提交,现在我需要将该PR与本地同步,以继续进行一些更改。我该怎么做才能将本地与PR同步。谢谢
答案 0 :(得分:1)
拉取请求基本上只是存储库中分支的指定分支。更新该分支(通过在新提交的基础上重新分配其提交),拉取请求将自动更新以显示这些更改。
首先,您需要在项目自己的分支中访问其他提交。为此,您可以将上游存储库添加为其他远程服务器,然后从那里获取提交:
git remote add <new-remote-name> <upstream-url.git>
git fetch <new-remote-name> <upstream-branch>
然后,您可以基于上游更改重新设置更改:
git checkout <your-pr-branch>
git rebase <new-remote-name>/<upstream-branch>
git push <origin> <your-pr-branch>
答案 1 :(得分:0)
您需要重新建立分支机构,以反映PR中其他人的所有合并工作。这是您可以执行的操作:
假设upstream
是您已派生的远程存储库的名称,origin
是您已派生的存储库的名称。
git pull --rebase upstream master
git push origin master
在重新定基期间的某个时间可能存在合并冲突。在这种情况下,请使用以下命令检查存在冲突的文件:
git status
红色文件的名称是有冲突的文件。手动解决冲突。解决后,使用以下命令添加文件:
git add <filename> or //for each conflicted file
git add --all //to add all files at once
再次使用git status
命令检查状态。如果所有文件都显示为绿色,则表示它们已解决,您现在可以继续进行基准。运行以下命令以继续进行变基:
git rebase --continue
完成后,只需使用以下命令将更改推送到您的分叉仓库中即可:
git push -f origin master
注意:如果您尚未设置上游和原始地址的远程网址,请使用以下命令添加它们:
git remote add upstream <upstream-url>
git remote add origin <origin-url>