GIT不会从远程获取最新的更改

时间:2016-08-19 04:17:43

标签: git bitbucket

不知何故,我的本地分支机构在我的远程分支机构后面停留了8个月。

当我git pull origin [my branch name]时,它会显示Already up to date

我尝试git fetch origin [my branch name]然后git reset --hard FETCH_HEADfound here),但我的本地副本仍然指向超级旧提交。

我还尝试使用git checkout 1d5d525found here)重置为特定内容,但它说:error: pathspec '1d5d525' did not match any file(s) known to git.但是该提交在远程分支中是100%,因为我可以在BitBucket中看到它。

我能想到的唯一不同的是,昨天我在不同的机器上工作(我的OSX笔记本电脑,而不是我的Win10桌面),但这并不能解释为什么#&# 39;落后8个月。

如果有任何大师可以给我一些指导,那就太棒了。

注意:我可以从我的笔记本电脑提交更多更改,它们会出现在BitBucket的分支机构上,但仍然没有运气。

注意:如果信息很重要,我是唯一一个在这个分支上工作的人。

谢谢!

编辑:

以下是git branch -vvgit remote - v的请求。

$ git branch -vv
ImageEdit 39b733c Image editing tweaks
Widgets   cce09e8 Merge Globals + Widgets to use the same functionality / DB table
* john      11798f3 [origin/john] Finished PDF Header. Waiting for feedback...
master    cce09e8 Merge Globals + Widgets to use the same functionality / DB table

$ git remote - v
origin  git@bitbucket.org:johnt/website.git (fetch)
origin  git@bitbucket.org:johnt/website.git (push)

注意:我将指出基于上述提交消息,主分支似乎也远远落后于远程分支。

编辑2:

以下是git branch -a -vv

的输出
$ git branch -a -vv
ImageEdit                39b733c Image editing tweaks
Widgets                  cce09e8 Merge Globals + Widgets to use the same functionality / DB table
* john                   11798f3 [origin/john] Finished PDF Header. Waaiting for feedback...
master                   cce09e8 Merge Globals + Widgets to use the same functionality / DB table
remotes/origin/ImageEdit 39b733c Image editing tweaks
remotes/origin/Widgets   cce09e8 Merge Globals + Widgets to use the same functionality / DB table
remotes/origin/glenn     0548f0d Changed Create a Lifeshare Page to Create a Lifeshare
remotes/origin/john      11798f3 Finished PDF Header. Waiting for feedback...
remotes/origin/master    cce09e8 Merge Globals + Widgets to use the same functionality / DB table

2 个答案:

答案 0 :(得分:1)

不确定这是否是正确的礼仪,但即使@VonC和@AnimiVulpis我们帮忙,我也能够解决自己。

使用git branch -a -vv显示本地和远程分支都指向同一个提交,但该提交错误(该提交来自8个月前)。

我将存储库克隆到一个新文件夹,登录到Bitbucket以获取最新的提交哈希并使用git reset --hard [commit hash]将HEAD指向正确的提交。

现在一切似乎都运行正常(虽然在另一个目录中大声笑)。我不确定远程分支最终如何指向该提交,但很高兴问题得到解决。

感谢@VonC和@AnimiVulpis花时间提供帮助。

答案 1 :(得分:0)

从您的输出中,本地分支和远程跟踪分支引用相同的提交,因此是最新的。

尝试git fetch确认:它将更新所有分支的远程跟踪分支 然后git branch -avv将显示是否存在任何差异。

git branch -f mybranch origin/mybranch(或git checkout -B mybranch origin/mybranch)足以重置它。