gfold
is a CLI application that helps you keep track of multiple Git repositories.
user at hostname in ~/git
% gfold
great-journey unclean main [email protected]:truth/great-journey.git
installation-zero bare main https://github.com/the-ark/installation-zero.git
sierra clean dev https://github.com/forward-unto-dawn/sierra.git
spark clean issue343 [email protected]:guilty/spark.git
tartarus unclean delta [email protected]:covenant/tartarus.git
voi clean main https://github.com/earth/voi.git
This app displays relevant information for multiple Git repositories in one, or multiple, directories. While this tool might seem limited in scope and purpose, that is by design.
It prints each repository in alphabetical order, and pads each result based on the longest directory, branch, and status string.
By default, gfold
looks at every Git repository in the current working directory.
However, if you would like to target another directory, you can pass that path (relative or absolute) as the first argument.
There are multiple ways to install gfold
, but here are the currently recommended methods...
Most likely, the easiest method of obtaining gfold
is via the latest GitHub release.
Once you have it downloaded, you can add it to your PATH
.
Here is an example on how to do that on macOS and Linux...
chmod +x gfold
sudo mv gfold /usr/local/bin/
You may have to reload your shell in order to see gfold
in your PATH
.
You can use symbolic links to swap between versions, and manage multiple at a time. Here is a full install workflow...
wget https://github.com/nickgerace/gfold/releases/download/$VERSION/gfold-linux-gnu-amd64)
mv gfold-linux-gnu-amd64 gfold-$VERSION
chmod +x gfold-$VERSION
sudo mkdir /usr/local/gfold/
sudo mv gfold-$VERSION /usr/local/gfold/
ln -s /usr/local/gfold/gfold-$VERSION /usr/local/bin/gfold
Now, you can add/remove versions of the binary from /usr/local/gfold/
, and change the symbolic link as needed.
This application is available for all Linux distributions that support installing packages from the AUR. Special thanks to orhun for maintaining these packages.
Many people choose to use an AUR helper, such as yay (example: yay -S gfold
), in order to install their AUR packages.
You can build from source with cargo
by executing the following...
cargo install --git https://github.com/nickgerace/gfold --tag 0.5.2
For all the ways on how to use this application, pass in the -h
, or --help
, flag.
gfold --help
Here are some example invocations...
gfold
gfold ..
gfold $HOME
gfold /this/is/an/absolute/path
gfold ../../this/is/a/relative/path
gfold ~/path/to/multiple/repositories/ -r
gfold -r $HOME/path/to/multiple/repositories
All external crates were vetted for support on all three major desktop platforms.
gfold
is tested for the latest versions of the following systems, but may work on more...
- Linux:
linux-gnu-amd64
- macOS:
darwin-amd64
- Windows 10:
windows-amd64
Please check out CHANGELOG.md for more information. It follows the Keep a Changelog format.
- Author: Nick Gerace
- License: Apache 2.0