假设有人创建了一个分支xyz。如何从远程服务器(例如GitHub)中提取分支xyz并将其合并到本地存储库中的现有分支xyz中?
答案推送分支到Git会给我一个错误“![拒绝]”,并提到“非快进”。
假设有人创建了一个分支xyz。如何从远程服务器(例如GitHub)中提取分支xyz并将其合并到本地存储库中的现有分支xyz中?
答案推送分支到Git会给我一个错误“![拒绝]”,并提到“非快进”。
当前回答
我做的
git branch -f new_local_branch_name origin/remote_branch_name
而不是
git branch -f new_local_branch_name upstream/remote_branch_name
正如@innaM所建议的。当我使用上游版本时,它说“fatal:不是有效的对象名:”upstream/remote_branch_name“”。我并没有按照注释的建议执行gitfetchorigin,而是简单地将上游替换为origin。我想它们是等价的。
其他回答
从远程到本地获取新分支的简单解决方案
获取远程分支git获取xyz本地切换到该分支git开关xyz最后,通过运行git分支
这有助于我在将其合并到其他分支之前获取远程分支:
git fetch repo xyz:xyz
git checkout xyz
gitfetch将获取最新的分支列表。
现在您可以用git签出MyNewBranch
完成时间:)
有关更多信息,请参阅docs:git fetch
我做的
git branch -f new_local_branch_name origin/remote_branch_name
而不是
git branch -f new_local_branch_name upstream/remote_branch_name
正如@innaM所建议的。当我使用上游版本时,它说“fatal:不是有效的对象名:”upstream/remote_branch_name“”。我并没有按照注释的建议执行gitfetchorigin,而是简单地将上游替换为origin。我想它们是等价的。
你也可以
git pull -r origin master
修复合并冲突(如果有)
git rebase --continue
-r表示重基。这将使您从
v master
o-o-o-o-o
\o-o-o
^ other branch
to
v master
o-o-o-o-o-o-o-o
^ other branch
这将导致一个更干净的历史。注意:如果您已经将另一个分支推送到源(或任何其他远程),则可能必须在重新设置基之后强制推送分支。
git push -f origin other-branch