推送分支提交未显示在远程源上

时间:2015-07-10 15:42:22

标签: git

  1. 我从机器A
  2. 克隆了远程仓库git clone URL
  3. 我创建了一个分支:git checkout -b my-new-branch
  4. 我对这个分支做了几次提交
  5. 我推送到服务器git push origin my-new-branch
  6. 我从另一台机器B克隆远程仓库
  7. git-fetchgit-fetch --all以及其他几个技巧,直到我的分支出现。
  8. 我切换到分支,git checkout my-branch,然后git log,并且我的所有提交都没有出现,即使git branch显示我在我的新分支上< / LI>

    发生了什么?我该如何诊断这个问题?这可能是版本不匹配的问题吗?

    (我在Debian上,我有一个相当旧版本的git:git version 1.7.10.4

1 个答案:

答案 0 :(得分:0)

在计算机B中,运行git branch -vv以确保本地my-branch正在跟踪远程my-new-branch

如果两个本地分支([origin/master]master)的输出显示my-branch,则my-branch正在跟踪origin/master而不是origin/my-new-branch

因此,要解决此问题,您可以通过运行

删除本地my-branch
git branch -D my-branch

然后创建一个新的本地my-branch来跟踪origin/my-new-branch

git checkout -b my-branch origin/my-new-branch

注意:上面的命令会创建本地分支并一起检出。