如何在 Mac 上安装 gitk?
从他们的官网看,好像是gitk自带的,但是我的git的版本(git version 1.7.12.4(Apple Git-37))并没有gitk自带。
brew install gitk
不适用于 gitk。
版本信息(从评论中复制):
OS X v10.8.2 (12C2034) (山狮)
Xcode 版本 4.6 (4H127)
git version 1.8.2.1 (Apple Git-45)
,其中包括 gitk
gitk
?此外,gitk
包含在 Homebrew git 中。
git
打包副本 - 它是一个包含 gitk
的构建,因此您可以为其创建一个别名并使用它。
正确,1.7.12.4(Apple Git-37)不附带 gitk。您可以使用 Homebrew(可执行 brew)将更新版本的 Git + git-ui 作为单独的公式安装。更详尽的说明位于 The fastest and easiest way to install Ruby on a Mac in 2022(请参阅此提交,将 git-gui/gitk 提取到自己的公式中:git-gui: split from git formula.)
在终端运行以下命令:
brew update
brew install git
brew install git-gui
如果您收到一个错误,表明它无法链接 Git,那么您可能需要更改它提到的文件的权限/所有者。
完成后,运行:
type -a git
并确保它显示:
/usr/local/bin/git
如果没有,请运行:
brew doctor
并更改路径以将 /usr/local/bin 更早地放在路径中。现在,gitk 应该在您的路径上(以及更新版本的 Git)。
Git Mac 版本没有 gitk
,但如果您使用 brew install git
,您可以立即访问 gitk
。
我正在使用 macOS v10.12.5 (Sierra)。
但这停止了工作。您必须安装 brew install git-gui
我刚刚遇到同样的问题并解决如下:
从 http://git-scm.com/download/mac 下载适用于 Mac 的官方 Git 包 安装包。这会将所有二进制文件放在文件夹 /usr/local/git/bin 中。 (可选)运行包含的脚本以使 gitk 在终端之外可访问 将 /usr/local/git/bin 添加到 PATH 或使用别名(别名 gitk='/usr/local/git/bin/gitk')
如果你已经通过 Homebrew 安装了 Git,你可以升级:
type -a git
brew upgrade git
type -a git
输出
/usr/bin/git /usr/local/bin/git
local/bin 的那个会有 gitk。
brew install git && which git
(不是双关语!)应该为您提供输出 /usr/local/bin/git
... 注意:我还强烈建议先更新和修改,如:brew update ; brew doctor && brew install git && which git
-或- brew update ; brew doctor && brew upgrade git && which git
代替...以获得预期的 /usr/local/bin/git
输出(来自 { 6} 命令)。
从 macOS v10.15.6 (Catalina) 开始,我运行:
brew install git
brew install git-gui
它对我有用。
我遇到过同样的问题。我安装了 GitX。
你可以从这里安装 GitX:
下载软件包并安装它。之后,从 Spotlight 搜索中打开 gitk,转到左上角。单击 GitX 并启用终端使用。
转到您的存储库并只需键入:
gitx --all
它将打开 GUI。
有两种方法可以解决此问题:
Unix 方式(简单且推荐) Homebrew 方式
1. Unix方式:简单四步
在终端中执行 which 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
文件并想了解如何创建文件,那么 click here。
如果您使用的是 OS X v10.11 (El Capitan) 或更高版本,并且遇到未知颜色名称“lime”错误,则此步骤是相关的。找到 gitk 可执行文件(通常在 /usr/local/bin/gitk),进行备份并在文本编辑器中打开它。查找文件中所有出现的石灰并将其替换为“#99FF00”。重新加载 Bash:source ~/.bash_profile
现在,运行 gitk
2.自制方式
更新 - 如果您的 Mac 上没有 homebrew
,请先安装它。它可能需要 sudo
权限。
酿造更新
冲泡医生
酿造链接 git
添加 /usr/local/Cellar/git/2.4.0/bin 到路径,重新加载 Bash,然后运行 gitk
还没有运气?进一步行动。
运行 which git 并观察 Git 是否仍然链接到 /usr/bin/git
如果是,则打开目录并找到它是一个二进制可执行文件。
采取它的备份。它可能会以名称 git.bak 保存并删除原始文件
重新加载终端 - source ~/.bash_profile
gitk
不工作是一个非常烦人的问题&未能启动它,因为他们在某个随机步骤中忘记了 sudo
,这是我希望任何阅读本文的人所面临的最后一件事。我写它是为了安全起见(虽然,sudo 不是)。
对于 macOS v10.14 (Mojave) 用户,我找到了 this page very useful,尤其是这个建议:
/usr/bin/wish $(which gitk)
...没有它,窗口无法正确显示!
我最终做了brew info git
。
这给了我 Git 被克隆到的信息:/usr/local/Cellar/git/1.9.0
所以我只是在我的 PATH 环境变量的开头添加了:/usr/local/Cellar/git/1.9.0/bin。
注意:我不知道如何使用 Homebrew ......我只是想快速开始,因为我还有其他事情要做......这基本上让 gitk 为我运行,所以我现在坚持它(它不过可能不是使用 Homebrew 的方式)。
brew info git
,然后将它所在的路径添加到 ~/.profile 中的 PATH 对我有用 (y)
如果你碰巧已经安装了 Fink,这对我在 OS X v10.10.5 (Yosemite) 上有用:
fink install git
请注意,作为副作用,其他 Git 命令也使用 Fink 安装的较新的 Git 版本(2.5.1),而不是 Apple 的版本(2.3.2),它仍然存在,但被我的 $PATH 抢占了。
首先,您需要检查您正在运行的 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。
如果像我一样,您已经安装了 Sourcetree,但也想使用 gitk
,您可以使用 Sourcetree 的嵌入式 Git 版本附带的版本。
Sourcetree 的 version of Git(以及 gitk)在这里:
对于 Windows:
C:\Users\User\AppData\Local\Atlassian\SourceTree\git_local\bin\git.exe
or
%USERPROFILE%\AppData\Local\Atlassian\SourceTree\git_local\bin
对于 Mac:
/Applications/SourceTree.app/Contents/Resources/git_local/bin
在该目录中,您会找到一个 gitk
可执行文件。
感谢@Adrian 的the comment,它提醒了我这一点。
我在使用 Git 版本 1.7.12.4 的 Mac 10.7.5 上遇到了同样的问题。
当我运行 gitk 时,我得到了一个错误:
“启动脚本错误:预期版本号,但得到”Git-37)”,同时执行“package vcompare $git_version”1.6.6.2“”从“if {[package vcompare $git_version”1.6.6.2“]> = 0中调用} { set 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"
gitk --all
,则可以看到未暂存的本地分支。输入 git status 后,未暂存的本地分支不可见。有没有人体验过?