GIT-GUI(1)
π GIT-GUI π
ok bestie, welcome to the git-gui(1) page β this is the one from the Git Manual and it's genuinely iconic. grab a snack, we're doing this. π¦
β¨ NAME β¨
git-gui β a portable graphical interface to Git π
β¨ SYNOPSIS β¨
git gui [<command>] [<arguments>]
β¨ DESCRIPTION β¨
So basically it's a Tcl/Tk based graphical user interface to Git. git gui is lowkey obsessed with letting you make changes to your repository β like making new commits, amending existing ones, creating branches, performing local merges, and fetching/pushing to remote repositories. all the main character stuff. π
Now, unlike gitk, git gui focuses on commit generation and single file annotation and it does not show project history. it's just not that girl, and that's fine. π
however, it does supply menu actions so you can start a gitk session from within git gui, so you're never truly stranded. π«Ά
git gui is known to work on all popular UNIX systems, Mac OS X, and Windows (under both Cygwin and MSYS). and to the extent possible, OS specific user interface guidelines are followed β which makes git gui a fairly native interface for users. slay. β¨
β¨ COMMANDS β¨
blameβ starts a blame viewer on the file you specify, on the version you give it (or on the working directory if you don't specify one). πbrowserβ starts a tree browser showing all files in the commit you specified. any file you pick through the browser gets opened in the blame viewer. it's giving collaboration. πΈcitoolβ startsgit guiand arranges things so you make exactly one commit before exiting and returning to the shell. the interface is limited to only commit actions, which slightly reduces the app's startup time and simplifies the menubar. lean, mean, one-commit machine. πversionβ displays the currently running version ofgit gui. that's it. that's the whole thing. π
β¨ EXAMPLES β¨
ok these are the vibes, follow along bestie:
git gui blame Makefile
shows you the contents of the file Makefile in the current working directory, and gives you annotations for both the original author of each line and who moved that line to its current location. the uncommitted file gets annotated, and any uncommitted changes (if there are any) are explicitly attributed to Not Yet Committed. π
git gui blame v0.99.8 Makefile
shows you the contents of Makefile in revision v0.99.8 and gives you annotations for each line. unlike the example above, the file is read from the object database and not the working directory. different source, same slay.
git gui blame --line=100 Makefile
loads annotations like described above and automatically scrolls the view so it's centered on line 100. no manual scrolling, we love efficiency. π
git gui citool
makes one commit and returns to the shell once it's done. heads up though: this command returns a non-zero exit code if the window was closed in any way other than by making a commit. so don't just X out of it, bestie. π
git gui citool --amend
automatically enters the Amend Last Commit mode of the interface. for when you need a little redo. π
git gui citool --nocommit
behaves like a normal citool, but instead of making a commit it just terminates with a zero exit code. it still checks that the index doesn't contain any unmerged entries though β so you can use it as a GUI version of git-mergetool(1). π
git citool
same as git gui citool (above). literally identical energy.
git gui browser maint
shows a browser for the tree of the maint branch. files you select in the browser can be viewed with the internal blame viewer. π
β¨ SEE ALSO β¨
gitk(1)β the Git repository browser. shows branches, commit history and file differences.gitkis the utility started bygit gui's Repository Visualize actions. π¦
β¨ OTHER β¨
fun fact: git gui is actually maintained as an independent project, but stable versions are distributed as part of the Git suite for the convenience of end users. it's giving "I have my own thing going on but I still show up for the group project." π
the official repository of the git gui project can be found at:
https://github.com/j6t/git-gui
β¨ GIT β¨
part of the git(1) suite. π«Ά
ok that's the whole page!! π this was Git 2.56.0, dated 09/28/2026 β so go forth, make exactly one commit, amend it, blame some files, and be the most native-feeling GUI user on any popular UNIX system, Mac OS X, Cygwin, or MSYS. no cap. πΈβ¨π
π¦ where this page comes from
- fedora 43: git-gui 2.56.0-1.fc43 Β· BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
- fedora 44: git-gui 2.56.0-1.fc44 Β· BSD-3-Clause AND GPL-2.0-only AND GPL-2.0-or-later AND LGPL-2.1-or-later AND MIT
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms