如何在Mac上安装gitk ?

从他们的官网上看,gitk似乎是自带Git的,但是我的Git版本(Git版本1.7.12.4 (Apple Git-37))并没有自带gitk。

Brew install gitk不能用于gitk。

版本信息(从注释中复制):

OS X v10.8.2 (12C2034) (Mountain Lion) Xcode版本4.6 (4H127)


当前回答

对于macOS v10.14 (Mojave)用户,我发现这个页面非常有用,尤其是这个建议:

/usr/bin/wish $(which gitk)

...否则,窗口将无法正确显示!

其他回答

首先,您需要检查正在运行的Git版本。安装了Homebrew的程序应该运行在/usr/local/bin/git.上你可以在终端上使用:

which git

如果Git出现在不同的目录中,你需要从终端运行这个命令,将它添加到你的路径中:

echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile

在那之后,你可以关闭并再次打开你的终端,或者只是运行:

source ~/.bash_profile

瞧!如果你在OS X v10.9 (Mavericks)上运行,你可能需要安装XQuartz。

我最后做的是酿酒信息。

这给了我信息,Git被克隆到:/usr/local/Cellar/git/1.9.0

所以我只是在PATH环境变量的开头添加了:/usr/local/Cellar/git/1.9.0/bin。

注意:我不知道如何使用自制软件…我只是想快点走,因为我还有其他事情要做。这基本上得到gitk运行为我,所以我坚持它现在(这可能不是与Homebrew工作的方式)。

有两种方法可以解决这个问题:

Unix方式(简单且推荐) 家酿之道

1. Unix方式:在四个简单的步骤

在终端中执行哪个git,以了解git可执行文件的位置。打开该目录并在bin文件夹中找到gitk。复制路径——通常是/usr/local/git/bin 编辑~/。Bash_profile文件在路径中添加本地git & gitk的位置,或者简单地从下面编写的示例中复制粘贴。

示例bash_profile:

# Enabling gitk
export PATH=/usr/local/git/bin:$PATH

如果您没有bash_profile文件,并且希望了解如何创建一个bash_profile文件,那么请单击这里。

如果您使用的是OS X v10.11 (El Capitan)或更高版本,并且遇到未知颜色名称“lime”错误,则此步骤是相关的。找到gitk可执行文件(通常在/usr/local/bin/gitk),备份并在文本编辑器中打开它。找到文件中出现的所有石灰,并将其替换为“#99FF00”。 重载Bash: source ~/.bash_profile

现在,运行gitk


2. 家酿的方式

更新-如果你的Mac上没有自制软件,请先安装。它可能需要sudo特权。

酿造更新 酿造的医生 酿造链接git 添加/usr/local/Cellar/git/2.4.0/bin到路径,重新加载Bash,运行gitk 还没找到?进一步推进。 运行哪个git,观察git是否仍然链接到/usr/bin/git 如果是,则打开该目录并定位为二进制可执行文件。 取它的备份。可以将其保存为文件名git.bak,并删除原始文件 重新加载终端源~/.bash_profile

如果你碰巧已经安装了Fink,这适用于我的OS X v10.10.5 (Yosemite):

安装git

注意,作为一个副作用,其他Git命令也在使用Fink安装的较新的Git版本(2.5.1),而不是Apple的版本(2.3.2),后者仍然存在,但被我的$PATH抢占了。

我在Mac 10.7.5和Git版本1.7.12.4上遇到了同样的问题。

当我运行gitk时,我得到了一个错误:

启动脚本错误:预期的版本号,但得到的是“Git-37)” 在执行 vcompare $git_version“1.6.6.2” 从内部调用 "if {[package vcompare $git_version "1.6.6.2"] >= 0} { 设置show_notes "——show-notes" }” (文件"/usr/bin/gitk"行11587)

当我查看gitk中的代码时,我看到了设置版本的行。

set git_version [join [lrange [split [lindex [exec git version] end] .] 0 2] .]

这以某种方式将git版本的结果解析为git -37,而不是1.7.12.4

我只是将git_version行替换为:

set git_version "1.7.12.4"