我用Bitbucket云创建了一个分支,然后我去我的两台笔记本电脑上运行git fetch
和git checkout new-branch
,我可以成功地看到新的分支。
在笔记本电脑A上,我做了一些更改提交它们,然后使用以下命令将它们推送到源git add . git commit -m 'some message' git push -u origin new-branch
我可以在bitbucket.org的提交下看到它们。
然后当我在笔记本电脑B上运行git fetch
时,git fetch
显示是最新的,运行git pull
时,git pull
显示已经是最新的,我无法从分支中拉下最新的提交。
返回bitbucket.org,提交仍然在那里列出。如果我创建一个新分支,然后使用git fetch
在笔记本电脑B上获取它,那么如果我在旧分支上运行git pull
,它会返回我丢失的提交。
以前有人遇到过这种情况吗。
1条答案
按热度按时间u3r8eeie1#
听起来你的两个工作目录可能指向不同的远程目录。在两个目录上运行这个命令,仔细比较输出:
假设它们是相同的,下一个要检查的是每个HEAD上的
git status
。有可能你的某个工作目录HEAD处于“奇怪”的状态,git status
会告诉你如何解决这个问题(例如,如果你放弃了一个rebase操作而没有运行git rebase --abort
)。