如何在git中修复“This branch is out-of-date with the base branch”?

34

我正在开发一个项目,我向在Github上的该项目提交了PR, 现在我的PR上显示:

"这个分支已经落后于基础分支,请将master分支中的最新更改合并到此分支"

那么我应该使用哪个git命令来使我的分支与master分支同步?

1个回答

41
如果您从同一项目仓库中的分支创建了Pull Request,则应执行以下操作:
  • 确保您已经检出了您的分支(即PR的分支):git checkout your-branch
  • 在检出了您的分支之后,应该使用git pull origin master命令获取最新更新。
  • 然后使用git push origin your-branch 命令来更新PR。
如果您forked一个repo、创建了分支并提交了PR,请按照以下步骤操作:
  • 为原始项目repo创建一个远程: git remote add upstream 'url.git.here'
  • 确保您已经检出了您的分支: git checkout your-branch
  • 将upstream最新更改合并到您的分支中: git pull upstream master
  • 之后,将从upstream获取的更改推送到您的分支: git push origin your-branch
  • 最后,您可以转到GitHub页面,以确保没有"out-of-date"阻止您的PR。
完成以上步骤后,您应该能够看到您的PR已准备好合并(在设置审查之后)。

4
还有GitHub的设置吗? - hannes ach
2
是的,Github 有一个设置可以“要求在合并之前更新分支”。这会导致出现此类警告。因此,如果您不想看到此警告,则可以禁用该设置。还有一些工具可以自动更新您的 Github 分支。我过去使用过的一个工具叫做 mergequeue.com。该工具还支持在 PR 合并时保持所有分支最新的功能。 - Ankit

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接