git本地分支机构不会“与正确的远程分支机构合并”

时间:2013-01-11 19:26:05

标签: git

我创建了2个本地分支来跟踪远程分支:

# git branch1 -t origin/branch1
# git branch2 -t origin/branch2

但在我进行'repo sync'并且我做git remote show origin之后,我看到我的分支是'与远程dev合并,而不是branch1和branch2'并且它们'正确地'推送'但是它说'本地过时'。

  # git remote show origin
  ...
  Local branches configured for 'git pull':
    branch1 merges with remote dev
    branch2     merges with remote dev
  Local refs configured for 'git push':
    branch1 pushes to branch1 (local out of date)
    branch2     pushes to branch2     (local out of date)

如何让我的分支(branch1,branch2)'与正确的分支合并'? 并让我的'本地不再'过时'?

谢谢。

2 个答案:

答案 0 :(得分:2)

我认为需要注意的重要一点是,无论您的分支名称是什么,您都在键入git branchgit branch1永远不是正确的命令。

你想要这个:

git branch -t origin/branch1

或者,如果要立即检查分支,可以执行此操作:

git checkout -t origin/branch1

此外,如果您已经有一个本地分支,并且想要将其设置为跟踪远程分支(而不是从远程分支将其检出为新分支),则可以执行以下操作:

git branch -u upstream/branch1 localbranch1

请注意,此语法最近已更改,其中一些命令仅适用于Git 1.8.0+。

答案 1 :(得分:0)

branch1 merges with remote dev消息并不表示您的分支 origin/dev合并,但origin/dev的默认分支如果您在当前branch1合并时运行git pull而未指定分支,则将合并到branch1