How can I install gitk on a Mac?
From their official website, it seems gitk comes with Git, but the version of my Git (git version 1.7.12.4 (Apple Git-37)) does not come with gitk.
brew install gitk
does not work for gitk.
Version information (copied from comments):
OS X v10.8.2 (12C2034) (Mountain Lion)
Xcode version 4.6 (4H127)
git version 1.8.2.1 (Apple Git-45)
which includes gitk
gitk
specifically? Also, gitk
is included with Homebrew git.
git
- and it's a build that has gitk
in it, so you can create an alias for it and just use it.
Correct, the 1.7.12.4 (Apple Git-37) does not come with gitk. You can install a more recent version of Git + git-ui as a separate formula by using Homebrew (executable brew). More thorough instructions are located on The fastest and easiest way to install Ruby on a Mac in 2022 (see this commit extracting git-gui/gitk into its own formula: git-gui: split from git formula.)
Run the following commands at the terminal:
brew update
brew install git
brew install git-gui
If you get an error indicating it could not link Git, then you may need to change permissions/owners of the files it mentions.
Once completed, run:
type -a git
And make sure it shows:
/usr/local/bin/git
If it does not, run:
brew doctor
And make the path change to put /usr/local/bin earlier in the path. Now, gitk should be on your path (along with an updated version of Git).
The Git Mac version comes without gitk
, but if you do brew install git
you get instant access to gitk
.
I'm using macOS v10.12.5 (Sierra).
But this stopped working. You must install brew install git-gui
I just had the same problem and solved it as follows:
Download the official Git package for Mac from http://git-scm.com/download/mac Install the package. This places all the binaries in folder /usr/local/git/bin. Optionally, run the included script to make gitk accessible outside of terminals Either add /usr/local/git/bin to your PATH or use an alias (alias gitk='/usr/local/git/bin/gitk')
If you already have Git installed via Homebrew, you can just do upgrade:
type -a git
brew upgrade git
type -a git
Output
/usr/bin/git /usr/local/bin/git
The one at local/bin will have gitk.
brew install git && which git
which (no pun intended!) should give you the output /usr/local/bin/git
... Note: I would also highly recommend updating and doctoring first, as in: brew update ; brew doctor && brew install git && which git
-or- brew update ; brew doctor && brew upgrade git && which git
instead... to get the expected /usr/local/bin/git
output (from the which
command).
As of macOS v10.15.6 (Catalina), I run:
brew install git
brew install git-gui
And it worked for me.
I had the same issue. I installed GitX instead.
You can install GitX from here:
Download the package and install it. After that, open gitk from spotlight search, go to the top left corner. Click on GitX and enable the terminal usage.
Go to your repository and simply type:
gitx --all
It will open the GUI.
There are two ways to fix this:
The Unix way (simple and recommended) The Homebrew way
1. Unix Way: In four simple steps
Execute which git in the terminal to know the location of your git executable. Open that directory & locate gitk inside the bin folder. Copy the path --- typically /usr/local/git/bin Edit your ~/.bash_profile file to add the location of local git & gitk in the paths or, simply copy-paste from the sample written below.
Sample bash_profile
:
# Enabling gitk
export PATH=/usr/local/git/bin:$PATH
If you don't have a bash_profile
file and want to learn how to create one, then click here.
This step is relevant if you're using OS X v10.11 (El Capitan) or higher, and you run into an unknown color name “lime” error. Locate gitk executable (typically at /usr/local/bin/gitk), take a backup & open it in a text editor. Find all occurrences of lime in the file & replace them with "#99FF00". Reload Bash: source ~/.bash_profile
Now, run gitk
2. Homebrew way
Updates - If you do not have homebrew
on your Mac, get it installed first. It may require sudo
privileges.
brew update
brew doctor
brew link git
added /usr/local/Cellar/git/2.4.0/bin to path, reload Bash, and run gitk
No luck yet? Proceed further.
Run which git and observe if Git is still linked to /usr/bin/git
If yes, then open the directory and locate the was a binary executable.
Take its backup. It may be save with a name git.bak and delete the original file
Reload the terminal - source ~/.bash_profile
gitk
not working is a really annoying problem & failing to launch it because they forgot to sudo
at some random step is the last thing I'd wished anyone reading this ever faced. I wrote it to play it safe (tho, sudo isn't).
You can also get gitk
with the git
from MacPorts.
sudo port install git
For macOS v10.14 (Mojave) users, I found this page very useful, particularly this suggestion:
/usr/bin/wish $(which gitk)
...without that, the window did not display correctly!
I ended up doing brew info git
.
Which gave me info that Git was cloned into: /usr/local/Cellar/git/1.9.0
So I just added: /usr/local/Cellar/git/1.9.0/bin to the beginning of my PATH environment variable.
Note: I don't know how to use Homebrew... I just want to get going quickly as I have other things to do... this basically gets gitk running for me, so I'm sticking to it for now (it is probably not the way to work with Homebrew though).
brew info git
and then adding the path it is in to PATH in ~/.profile worked for me (y)
If you happen to already have Fink installed, this worked for me on OS X v10.10.5 (Yosemite):
fink install git
Note that as a side effect, other Git commands are also using the newer Git version (2.5.1) installed by Fink, rather than the version from Apple (2.3.2), which is still there, but preempted by my $PATH.
First you need to check which version of Git you are running. The one installed with Homebrew should be running on /usr/local/bin/git. You can verify this from a terminal using:
which git
In case Git shows up on a different directory, you need to run this from a terminal to add it to your path:
echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile
After that, you can close and open again your terminal or just run:
source ~/.bash_profile
And voilà! In case you are running on OS X v10.9 (Mavericks) you might need to install XQuartz.
If, like me, you have Sourcetree installed, but want to use gitk
as well, you can use the version that comes with Sourcetree's embedded version of Git.
Sourcetree's version of Git (and thus gitk) is here:
For Windows:
C:\Users\User\AppData\Local\Atlassian\SourceTree\git_local\bin\git.exe
or
%USERPROFILE%\AppData\Local\Atlassian\SourceTree\git_local\bin
For Mac:
/Applications/SourceTree.app/Contents/Resources/git_local/bin
In that directory, you'll find a gitk
executable.
Thanks to @Adrian for the comment which alerted me to this.
I had the same problem on Mac 10.7.5 with Git version 1.7.12.4.
When I ran gitk, I got an error:
"Error in startup script: expected version number but got "Git-37)" 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 "/usr/bin/gitk" line 11587)
When I looked at the code in gitk I saw the line that sets the version.
set git_version [join [lrange [split [lindex [exec git version] end] .] 0 2] .]
This somehow parsed the git version results to Git-37
instead of 1.7.12.4
I just replaced the git_version line with:
set git_version "1.7.12.4"
Success story sharing
gitk --all
, unstaged local branch is visible. After you type git status, unstaged local branch is unvisible. Does anyone experience it?