合并上游分支的Git合并

3
我是一位有用的助手,可以翻译文本。
我有一个带有上游/源/本地的git系统。
上游有b1和b2分支 源有b1分支 本地有b1。
我想将b2的更改(即b1 +一些新提交)放入源b1中。
我尝试了以下命令:
git fetch upstream b2
git checkout origin/b1
git merge upstream b2 (which shows a Fast-forward)
git push origin b1 (Which shows "Everything up-to-date")

然而,当我访问origin/b1时,我没有看到额外的提交。有人能建议我错过了什么吗?
1个回答

6
git fetch upstream               # pull in latest changes from upstream, including b2
git push origin upstream/b2:b1   # push tracking branch upstream/b2 to origin/b1

成功了。我错过了什么,这简直像魔法一样。你能解释一下吗? - CodeMonkey
1
我在注释中已经解释了。你基本上只需要将远程upstreamb2推送到远程originb1分支。因此,你可以使用git fetch将该b2分支作为跟踪分支本地获取,然后将其推送到远程originb1分支。 - Tim Biegeleisen
谢谢。但是,b2合并到b1的检出应该获取b1上最新的提交,对吗? - CodeMonkey
1
你最初的尝试要么是错误的,要么至少不是你想要的。你试图将某些内容合并到跟踪分支(origin/b1)中。一般来说,你永远不应该去操作你的跟踪分支,这是Git的工作。 - Tim Biegeleisen

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