Skip to content

davvid/gcd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gcd - Git worktree navigator

gcd lets you quickly navigate to Git worktrees on your filesystem.

cdg lets you quickly navigate to directories within your current worktree.

Preview

Dependencies

  • eza (required)

  • fzf (required)

  • fd (optional)

sudo apt install eza fzf fd-find

Installation

  • Clone this repository to ~/.config/git/gcd:
mkdir -p ~/.config/git
git clone https://gitlab.com/davvid/gcd.git ~/.config/git/gcd
  • Edit your ~/.bashrc or ~/.zshrc and add this snippet:
if test -f ~/.config/git/gcd/gcd.sh
then
    source ~/.config/git/gcd/gcd.sh
fi

Configuration

gcd searches for worktrees in $HOME by default.

gcd can be configured to search in other directories by setting the gcd.paths git config variable:

git config --global --add gcd.paths '$HOME/src'
git config --global --add gcd.paths '$HOME/dev'

$VARIABLES are expanded by gcd so that you can reuse your git configuration in more scenarios.

gcd traverses two levels deep into the configured paths by default. You can configure gcd to search deeper by setting the gcd.depth variable.

git config --global gcd.depth 3

NOTE: higher depth values cause more disk IO and can have an impact on performance.