当检查git repo的状态时,为什么我的命令行提供的信息与Visual Studio不同?

时间:2019-05-29 18:56:01

标签: git visual-studio-2013

我正在测试编写脚本,以提取最新版本的master,然后基于更新的master合并或重新建立本地分支。

在尝试这样做时,我遇到了一个问题,Visual Studio看到我需要下拉提交以获取最新信息,但是命令行指出我是最新的。

我已经附上了一个屏幕快照,其中显示了Visual Studio中显示的传入提交,但cli显示了最新的

Confusing displays

Repo Folder

1 个答案:

答案 0 :(得分:0)

如果git status在远程(origin/master)中未显示任何更改,但是Visual Studio确实显示了要拉取的更改,则可能是Git尚未更新其远程跟踪分支。通常,只有命令git fetchgit pullgit remote update实际上会访问远程服务器以更新其状态。这是让Git如此之快的一部分-通常可以在本地存储库中运行。

运行git remote update以更新远程跟踪分支。然后git status将准确显示要拉动的更改。

示例:

$ git status
On branch develop
Your branch is up to date with 'origin/develop'.

nothing to commit, working tree clean
✔ ~/myrepo [develop|✔] 
$ git remote update
Fetching origin
✔ ~/myrepo [develop ↓·1|✔] 
$ git status
On branch develop
Your branch is behind 'origin/develop' by 1 commit, and can be fast-forwarded.
  (use "git pull" to update your local branch)

nothing to commit, working tree clean
✔ ~/myrepo [develop ↓·1|✔] 
$