Git:本地合并远程分支
我已经通过所有的远程分支git fetch --all
。 我可以看到我想通过git branch -a
作为远程/起源/ branchname合并的git branch -a
。 问题是它不可访问。 我无法合并或结帐?
您可以引用这些远程跟踪分支〜(以git branch -r
列出)和远程名称。
如果你想合并你的本地分支的远程分支之一:
git checkout master git merge origin/aRemoteBranch
如果您想要将其中一个本地分支合并到其中一个远程分支上,则需要首先在所述远程分支上创build一个本地分支:
git checkout -b myBranch origin/aBranch git merge aLocalBranch
每当我做一个合并,我进入我想合并到分支(例如“ git checkout branch-i-am-working-in
”),然后执行以下操作:
git merge origin/branch-i-want-to-merge-from
也许你想用本地分支跟踪远程分支:
- 创build一个新的本地分支:
git branch new-local-branch
- 设置这个新创build的分支来跟踪远程分支:
git branch --set-upstream-to=origin/remote-branch new-local-branch
- 进入这个分支:
git checkout new-local-branch
- 将远程分支的所有内容拉入本地分支:
git pull
如果你已经获取了你的远程分支,并执行git branch -a
,
你获得像这样的东西:
* 8.0 xxx remotes/origin/xxx remotes/origin/8.0 remotes/origin/HEAD -> origin/8.0 remotes/rep_mirror/8.0
之后,您可以使用rep_mirror/8.0
在本地指定您的远程分支。
关键是remotes/rep_mirror/8.0
不起作用,但是rep_mirror/8.0
却rep_mirror/8.0
。
所以,像git merge -m "my msg" rep_mirror/8.0
这样的命令会进行合并。
(注意:这是对@VonC答案的评论,我把它作为另一个答案,因为代码块不适合评论格式)