首页 文章

Git pull没有拉下最近的提交

提问于
浏览
3

我在BitBucket上有一个Git回购 . 我有两个分支 masterdb . 在我的笔记本电脑上,我对 db 做了更改,提交了更改并推送到了BitBucket . 我可以看到该分支中的提交 .

现在我在分支主机上做了 git pull . 它's pulled down master'提交但不是db,我想它可能是应该工作的方式 . 我想获取db上的最新提交,所以我切换到该分支并执行 git pull 但是我得到以下消息:

你让我拉而不告诉我你要合并哪个分支......

我不确定为什么会这样 . 我在这台机器上创建了那个分支,所以它不应该只是将提交下拉到那个分支吗?

OUTOUT FROM git branch -vva

$ git branch -vva
  analytics             cea39b9 updated analytics code
* db                    6091b29 minor change to the tag creation code
  master                0a4070c [origin/master] Merge branch 'master' of https:/
/bitbucket.org/billyjones/findr.fm
  remotes/origin/db     faf9970 Got tracks working. Now trying to cache prices.
  remotes/origin/master 0a4070c Merge branch 'master' of https://bitbucket.org/b
illyjones/findr.fm

这是我需要提取的faf9970提交

1 回答

  • 4

    如果您的桌面还没有本地 db 分支,则首先必须创建它:

    git branch db origin/db
    

    在此之前可能需要执行 git fetch -a .

    如果本地 db 分支已存在,请确保它跟踪相应的远程分支 .

    您可以通过 git remote show origin 验证 . 在"Local branches configured for 'git pull':" Headers 下,它应显示"db merges with remote db" . 如果不是这种情况,如果您使用的是git 1.8,请执行此命令:

    git branch -u origin/db db
    

    如果您使用的是旧版本的git,请使用以下命令:

    git branch --set-upstream db origin/db
    

相关问题