app gprofile

Quickly switch and manage multiple git user profiles

2 unstable releases

0.2.0 Feb 24, 2022
0.1.0 Jan 8, 2022

MIT/Apache

785KB
282 lines

gprofile Crates.io License

Quickly switch and manage multiple git profiles.

Demo

A demonstration

Motivation

There are many similar tools that offer more features and look prettier than this. The main difference between them is this has zero dependencies and my focus is on reducing compile times and binary size.

The resulting binary building in --release mode is 456K only (on my machine).

Installation

If you have rust toolchain installed, you can just do:

cargo install gprofile

Alternatively, you can download pre-build binaries from the release page to you $PATH.

Note: Resulting binary's name is git-profile.

Usage

# list available profiles
git profile --list

# use `work` profile
git profile --use=work

# delete `work` profile
git profile --delete=work

# edit `personal` profile
git profile --edit=personal

Help

USAGE:
  gprofile [FLAGS]
  gprofile [OPTIONS] <PROFILE>

FLAGS:
  -h, --help            Prints help information
  -v, --version         Prints version information

OPTIONS:
  -c, --create            Create a new profile
  -r, --remove=<PROFILE>  Delete a given profile
  -e, --edit=<PROFILE>    Edit a given profile
  -u, --use=<PROFILE>     Set the given profile as current user name and email
  -l, --list              List available profiles
  -d --dump-config        Dump config path & config to stdout

No runtime deps