gamm (Git Account Manager) automatically switches your git identity based on which repository you're working in. Perfect for developers juggling multiple git accounts—like personal and work profiles—who want to ensure commits are always made with the correct name, email, and GPG settings.
- Create profiles with different git credentials (name, email, GPG signing preferences)
- Assign profiles to repositories — when you first commit to a new repo, gamm prompts you to pick a profile
- Automatic switching — on every commit, a pre-commit hook detects the repository and applies the correct git config globally before the commit proceeds
Git Account Manager - Manage multiple git configurations
Usage: gamm <COMMAND>
Commands:
version Display version information
init Initialize gamm and install git hooks
cleanup Remove gamm git hooks
pre-commit Pre-commit hook: apply git config based on repository URL
repo Manage repository configurations
profile Manage profile configurations
help Print this message or the help of the given subcommand(s)
Options:
-h, --help Print help
cargo install --git https://github.com/raftio/gamm.git- Initialize gamm to install git hooks globally:
gamm init-
Create a profile - when you first commit in a repository, gamm will prompt you to create a profile with your git credentials (name and email).
-
Manage profiles:
# List all profiles
gamm profile list
# Delete a profile
gamm profile delete- Manage repositories:
# List all configured repositories
gamm repo list
# Delete a repository configuration
gamm repo deleteThis project is licensed under the MIT License.