git branch -vv似乎在试图弄清楚当使用远程分支进行跟踪时是否提前多少提交时,自相矛盾

时间:2018-01-20 00:54:27

标签: git-branch git-merge

$ git status
On branch CurrAsOf18Jan2018
Your branch is up to date with 'remotes/bitbucketFrmWin/master'.

nothing to commit, working tree clean

但我知道我的bitbucket repo领先于几个提交问题:我是否必须总是进行git fetch - 所以我的本地git可以确定 - 我以为我正在跟踪我的遥控器repo bitbucketFrmWin - 无论如何我做了以下......

$ git fetch --all
Fetching bitbucketFrmWin
From https://bitbucket.org/FreeFries/simplcontactsvcf
   50d1fc6..d79d834  master     -> bitbucketFrmWin/master

现在好我的本地回购可以检查提取的遥控器是否提前/后面

$ git status
On branch CurrAsOf18Jan2018
Your branch is behind 'remotes/bitbucketFrmWin/master' by 5 commits, and can be fast-forwarded.
 nothing to commit, working tree clean

好的我很高兴这就是我的想法

$ git branch -vv
* CurrAsOf18Jan2018             50d1fc6 [remotes/bitbucketFrmWin/master: behind 5] Pedantic but done - gitNotes.txt

  bitbucketFrmWin/master        58470cd [CurrAsOf18Jan2018: behind 7] This is really crazy - Spent more than a week - Singleton still gives null pointer inJdbcExample2

现在这就是抛出我[CurrAsOf18Jan2018: behind 7] (see last output line above) ......应该先说5 - 毕竟它正在比较同一个远程回购分支。我在这里的理解中缺少什么?

$ git merge --no-commit --ff-only d79d834
Updating 50d1fc6..d79d834
Fast-forward
 .gitignore                    |   2 ++
 gitNotesUpgradeInstall.txt    |  38 ++++++++++++++++++++++++++++++++++++++
 sqliteData/testtestdb.sqlite3 | Bin 278528 -> 0 bytes
 3 files changed, 40 insertions(+)
 create mode 100644 gitNotesUpgradeInstall.txt
 delete mode 100644 sqliteData/testtestdb.sqlite3

我继续使用git快速获取它的本地分支 - 我告诉它不要提交 - 但忽略了我的请求并且仍然提交 - 为什么?

我的bitbucket分支主人实际上已经提交了d79d834,但是" git branch -vv"上面没有显示提交sha签名在它的列表中尽管提取 - 为什么?

$ git status
On branch CurrAsOf18Jan2018
Your branch is up to date with 'remotes/bitbucketFrmWin/master'.
nothing to commit, working tree clean

然而git状态现在知道它已经赶上我的远程分支并且很高兴 如果有人能够对上面提出的关于这些是上面的git工作流程中的错误或误解的问题有所了解 - 我将不胜感激。感谢。

1 个答案:

答案 0 :(得分:1)

  

我继续使用git fetch它fast-forward是我的本地分支 - 我告诉它不要提交 - 但忽略了我的请求并且仍然提交 - 为什么?

因为没有提交:它没有提交任何提交:它只是将你的分支HEAD快进到远程提交。

bitbucketFrmWin/master是一个本地分支,而不是远程分支!
它的名字选择不当,因为它与遥控器remotes/bitbucketFrmWin/master匹配 但是作为本地人,它的远程对手(刚刚更新了git fetch bitbucketFrmWin)也就不足为奇了。

如果您想查看您的遥控器和本地遥控器,请输入:

git branch -avv

您也会看到remotes/bitbucketFrmWin/master分支。