Gitk没有显示高手的HEAD?

时间:2015-11-09 22:17:20

标签: git gitk

这是在Ubuntu 14.04,git版本1.9.1(gitk相同)。我这样做:

$ cd /tmp
$ git clone https://github.com/underdoeg/ofxLibRocket.git ofxLibRocket-git
Cloning into 'ofxLibRocket-git'...
remote: Counting objects: 1013, done.
remote: Total 1013 (delta 0), reused 0 (delta 0), pack-reused 1013
Receiving objects: 100% (1013/1013), 16.85 MiB | 326.00 KiB/s, done.
Resolving deltas: 100% (631/631), done.
Checking connectivity... done.
$ cd ofxLibRocket-git
$ git status
On branch master
Your branch is up-to-date with 'origin/master'.

nothing to commit, working directory clean
$ git log -1 --decorate
commit 14360ed8fd3428aa0a2e052f6363e5daa0bf0d75 (HEAD, origin/master, origin/HEAD, master)
Merge: 06dd209 801877c
Author: Philip Whitfield <philip@undef.ch>
Date:   Fri Feb 22 03:16:37 2013 -0800

    Merge pull request #6 from neilmendoza/master

    Fixed OSX libs and example
$ gitk --all .

到目前为止很好 - 但是,如果我在此目录中运行gitk --all .,那么{{1}中指示的当前HEAD的提交是显示?这就是我得到的:

gitk

这是奇怪的事情:我在gitk中显示的唯一包含OSX字词的提交,我已手动选择:

  • 的哈希值为gitk,与801877c48390324dc7d600936306cd7c00486dcc显示的当前头部不同,git log
  • 14360ed8fd3428aa0a2e052f6363e5daa0bf0d75是&#34;合并拉取请求&#34;一个提交者,另一个提交者的14360ed8拉取请求,同一个补丁/提交,&#34; 固定的OSX库和示例&#34;
  • 801877c
  • 的任何提交中均未列出14360ed8
  • 没有黄点表示HEAD,也没有#34; master#34;分支标签,gitk中的任何位置(当然不在gitk旁边。)

那么,为什么在这种情况下801877c显示HEAD和gitk提交?我试过了:

14360ed8

...但git checkout master git reset --hard HEAD 中的显示效果似乎没有区别......在这种情况下,如何才能正确显示HEAD和主分支?

编辑:所以,我安装了gitk(版本0.2.7),它似乎更有意义的可视化:

gitg

这是gitg中的错误,还是gitk需要一些特殊设置(比如命令行开关)来显示存储库的这种状态?

1 个答案:

答案 0 :(得分:1)

    没有路径规范的
  1. gitk --all会提供预期结果,与gitg
  2. 完全相同
  3. 似乎 gitk <some path>完全忽略--all切换并显示修改给定文件但不收集任何引用的第一个提交。所以我再也不称它为一个bug,只是一个,嗯,它的实现方式。另外我应该提一下,在命令行中为gitk指定一个文件对我来说是不寻常的事情。