Seven general-purpose Git utilities
Add to Your Toolbox
Once you've started using Git, these seven utilities can help you get the most out of this essential version control system.
Git, the version control system originally written by Linus Torvalds, is one of the most widely used Linux commands. Like other popular commands, such as apt
or vim
, an entire ecosystem of tools has grown up around it. In fact, Debian's stable repository alone lists over 60 secondary tools whose names start with "git" and around 70 with unique names.
These tools cover a vast range of functions. Some, like git-github
and git-gitlab
, help you more efficiently use other services. Others enable particular text editors: git-el
enables Emacs support, while git-email
adds functionality. Still others are commands to run reports on authors, commits, and other activities; to generate packages and send them to the repositories of distributions from within Git; to clean up repositories; and much more. There is even Gitless, an experiment to create a version control system on top of Git. Most of these tools are standalone scripts, but a minority are add-ons to Git and run as an option to the basic git
command. Look beyond the Debian repositories, and you are likely to find as many choices again.
Some users install git-all
and sort through all the secondary tools at their leisure. But what if you are more selective about what you put on your hard drive? Below are seven general utilities that can benefit most Git users.
git-big-picture
The command line is text-oriented, but some users benefit from a visual aid. For these users, git-big-picture
provides a visualization tool that is the equivalent to git branch
. It displays branches in numerical and then alphabetical order. For other users, the command provides a memory aid, perhaps as a map to monitor large numbers of branches. The command structure is:
git-big-picture --format=FORMAT --outfile=FILE --viewer=VIEWERGIT-REPOSITORY
The formats supported are SVG, PNG, PS, and PDF (Figure 1). By specifying a viewer, you open the result right after the command is processed.
git-cola
While Git is designed to work from the command line, sometimes you need a graphical interface for an overview. Of all the half dozen or so graphical interfaces for Git, git-cola
is by far the most efficient; its developer describes git-cola
as a "caffeinated" version of Git (Figure 2).
The git-cola
GUI consists of three main windows. The first window is a file manager that lets you choose a Git repository. The second is the main working window, with Status, Commit, Branches, and Diff panes and accompanying menus. This window is likely to be immediately comprehensible to anyone with a basic understanding of Git. The third shows a detailed view of the current branch and its contents, as well as a map of all the repository's branches. Like the second window, the third has a simple top-level structure, but some of its dialogs demand more expertise and can be formidable in their detail.
git-crecord
Based on a similar tool for the Mercurial version management system, git-crecord
can commit files in batches and set up comparisons in Git. In addition, its graphical interface and color-coding provides an overview of the repository. For example, in Figure 3, multiple files are staged, but not yet committed. Using git-crecord
, users can choose how many files to commit.
Be aware that git-crecord
integrates with the git-core
, so that its command structure is git crecord
. It has no options and therefore no man page.
Buy this article as PDF
(incl. VAT)
Buy Linux Magazine
Subscribe to our Linux Newsletters
Find Linux and Open Source Jobs
Subscribe to our ADMIN Newsletters
Support Our Work
Linux Magazine content is made possible with support from readers like you. Please consider contributing when you’ve found an article to be beneficial.
News
-
Latest Cinnamon Desktop Releases with a Bold New Look
Just in time for the holidays, the developer of the Cinnamon desktop has shipped a new release to help spice up your eggnog with new features and a new look.
-
Armbian 24.11 Released with Expanded Hardware Support
If you've been waiting for Armbian to support OrangePi 5 Max and Radxa ROCK 5B+, the wait is over.
-
SUSE Renames Several Products for Better Name Recognition
SUSE has been a very powerful player in the European market, but it knows it must branch out to gain serious traction. Will a name change do the trick?
-
ESET Discovers New Linux Malware
WolfsBane is an all-in-one malware that has hit the Linux operating system and includes a dropper, a launcher, and a backdoor.
-
New Linux Kernel Patch Allows Forcing a CPU Mitigation
Even when CPU mitigations can consume precious CPU cycles, it might not be a bad idea to allow users to enable them, even if your machine isn't vulnerable.
-
Red Hat Enterprise Linux 9.5 Released
Notify your friends, loved ones, and colleagues that the latest version of RHEL is available with plenty of enhancements.
-
Linux Sees Massive Performance Increase from a Single Line of Code
With one line of code, Intel was able to increase the performance of the Linux kernel by 4,000 percent.
-
Fedora KDE Approved as an Official Spin
If you prefer the Plasma desktop environment and the Fedora distribution, you're in luck because there's now an official spin that is listed on the same level as the Fedora Workstation edition.
-
New Steam Client Ups the Ante for Linux
The latest release from Steam has some pretty cool tricks up its sleeve.
-
Gnome OS Transitioning Toward a General-Purpose Distro
If you're looking for the perfectly vanilla take on the Gnome desktop, Gnome OS might be for you.