gitk给出“无法读取”git_version“:没有这样的变量”并且不会运行

时间:2015-03-24 17:57:31

标签: git gitk

今天gitk停止了工作。当我尝试运行它时(有或没有--all),它说:

Error in startup script

can't read "git_version": no such variable
    while executing
"package vcompare $git_version "1.6.6.2""
    invoked from within
"if {[package vcompare $git_version "1.6.6.2"] >= 0} {
    set show_notes "--show-notes"
}"
    (file "C:\Program Files (x86)\Git\bin\gitk" line 12225)

这是在使用存储库时开始的,因为看起来像是一个损坏的对象,我无法从BitBucket获取提交。但是我能够再次克隆存储库,现在我有了这个提交,其他人也在之后。

我不确定这是否相关,因为gitk在任何存储库中存在上述问题。

我该如何解决这个问题?

我尝试的事情:

  • 卸载并重新安装Git。 (无论是否完全消除设置。)
  • 黑客攻击gitk中的Tcl脚本,将所有版本检查更改为if {1}并将一个版本检查行更改为硬编码:

    regexp {^git version ([\d.]*\d)} "1.9.5" _ git_version

    这样做之后,我可以获得运行的gitk,但是没有提交历史记录;它只是说"没有选择提交"。

  • 获取very latest version of gitk并将其复制到我现有的gitk上。确切的错误消息(行号除外,但它与实际的代码行相同)。

  • 我通常不会使用Git GUI,但如果我尝试使用它(git gui),则会失败并显示类似消息:

      

    git-gui:致命错误

         

    无法解析Git版本字符串:

  • 但如果我定期git version,我会得到:

      

    git version 1.9.5.msysgit.1

1 个答案:

答案 0 :(得分:0)

由于我的工作网络上发生了一些与Active Directory相关的更改,这些问题似乎是由于我的用户目录发生了变化。

如果您遇到类似的问题,请查看您的用户目录是否已移动或无法访问,从而阻止Git访问全局设置。