Skip to content

Plugin for managing multiple git profiles.

License

Notifications You must be signed in to change notification settings

empresslabs/gitprofiles.plugin.zsh

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

27 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gitprofiles.plugin.zsh gitprofiles.plugin.zsh

Plugin for managing multiple git profiles.

Installation

git clone https://github.com/empresslabs/gitprofiles.plugin.zsh.git $ZSH_CUSTOM/plugins/gitprofiles
~/.zshrc
plugins=(... gitprofiles)
zinit light empresslabs/gitprofiles.plugin.zsh
zi light empresslabs/gitprofiles.plugin.zsh
zgenom load empresslabs/gitprofiles.plugin.zsh
zplug empresslabs/gitprofiles.plugin.zsh

Add the following to your .zsh_plugins.txt file for antidote:

empresslabs/gitprofiles.plugin.zsh

Usage

Define where your profiles are stored

# ~/.zshrc

zstyle ":empresslabs:git:profile" path "$HOME/.config/git/profiles"

Add a new profile

# ~/.config/git/profiles

[profile "default"]
  name = Bruno Sales
  email = me@baliestri.dev
  # signingkey = 1234567890

[profile "work"]
  name = Bruno Sales
  email = work@baliestri.dev
  # signingkey = 1234567890
  paths = "/home/baliestri/work"

[profile "personal"]
  name = Bruno Sales
  email = personal@baliestri.dev
  # signingkey = 1234567890
  paths = "~/personal",
    "~/src/personal/*",
    "~/src/mytopsecretproject"

Multiple paths can be defined for a profile, separated by either newline or commas. The paths are processed in the order they are defined, with exact matches taking precedence over wild card matches. Tildes are expanded to ${HOME}.

It is possible to get debug information by setting the GP_DEBUG environment variable to any value within your current session.