gfold
gfold
is a CLI application that helps you keep track of multiple Git repositories.
Description and Motivation
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.
Installation
There are multiple ways to install gfold
, but here are some recommended methods...
Installation Methods | linux-gnu-amd64 |
macos-amd64 |
windows-amd64 |
---|---|---|---|
Homebrew | x | x | - |
Arch User Repository (AUR) | x | - | - |
Cargo Install | x | x | x |
GitHub Release Binary | x | x | x |
Homebrew
You can use Homebrew to install the tap for gfold
.
Alternatively, you can do...
Running brew help
or man brew
can help you use brew
locally.
You can check out Homebrew's documentation as well.
Arch User Repository (AUR)
This application is available for all Linux distributions that support installing packages from the AUR.
- gfold (builds from source)
- gfold-bin (uses the GitHub release binary)
- gfold-git (VCS/development package)
Many people choose to use an AUR helper, such as yay (example: yay -S gfold
), in order to install their AUR packages.
Cargo Install
You can install from crates.io by executing...
GitHub Release Binary
You can obtain gfold
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...
You may have to reload your shell in order to see gfold
in your PATH
.
Advanced Management
You can use symbolic links to swap between versions, and manage multiple at a time. Here is a full install workflow example...
Now, you can add/remove versions of the binary from /usr/local/gfold/
, and change the symbolic link as needed.
Usage
For all the ways on how to use this application, pass in the -h
, or --help
, flag.
Here are some example invocations...
Compatibility
gfold
, and its external crates, support all three major desktop platforms.
It is tested for the latest versions of the following systems, but may work on more...
- Linux:
linux-gnu-amd64
- macOS:
macos-amd64
- Windows 10:
windows-amd64
Changelog
Please check out CHANGELOG.md for more information. It follows the Keep a Changelog format.
Code of Conduct
This repository follows and enforces the Rust programming language's Code of Conduct.
Additional Information
- Author: Nick Gerace
- License: Apache 2.0
Special Thanks To...
- @jrcichra for adding multi-OS support to the original CI pipeline
- @orhun for maintaining all three AUR packages
- @yaahc for mentoring