Start, review, and switch between Git tasks without disturbing the work already open.
gji makes Git worktrees feel like normal shell navigation. Each task gets its
own directory, dependencies, editor context, and terminal — so moving to a
pull request or experiment does not require stashing, checking out, or
reinstalling.
Run gji new and let the interactive flow guide you into a fresh worktree:
gji newChoose a task name and setup options, then continue working in the new directory. For repeatable workflows, you can still provide a branch directly:
gji new feature/payment-refactorYou are halfway through a feature when someone asks you to review a pull request. Without worktrees, a quick review often becomes:
stash → checkout → reinstall → review → checkout back → stash pop
With gji, the review gets its own workspace and your current task stays
untouched:
gji pr 1234
Before
|
After
|
gji new # interactively start a task
gji pr 1234 # open a pull request in isolation
gji go main # jump to another worktree
gji done feature/payment-refactor # finish and clean up a taskWith shell integration enabled, each command moves your shell into the selected worktree automatically.
npm install -g @solaqua/gji
gji initgji init interactively installs shell integration, completions, and an
available editor. Restart your shell, or source the rc file shown by the
wizard, then run:
gji doctorWithout shell integration, commands still print paths for scripts and other non-interactive use. See the installation guide for explicit shell setup.
# Start feature work
gji new
# Check what is active
gji
# Review a PR without changing the current task
gji pr 1234
# Move between tasks
gji go feature/payment-refactor
gji back
# Keep worktrees current and remove finished work
gji sync
gji done feature/payment-refactorWorktrees use a predictable location by default:
../worktrees/<repo>/<branch>
That keeps editor bookmarks, scripts, and terminal navigation stable.
Use the documentation when you need to go beyond the core workflow:
- Daily workflow — navigation, PRs, sync, and cleanup
- Commands — complete command reference
- Shell integration — zsh, bash, and fish setup
- Configuration — paths, defaults, and local files
- Hooks — automate setup and cleanup
- Sync and cleanup — maintain active worktrees
- Comparison —
gjivsgit worktree,lazygit, andghq - FAQ and troubleshooting — common questions and fixes
gji also supports JSON output for scripts and AI-assisted workflows:
gji --json
gji new --json feature/dark-mode
gji go --json feature/dark-modeRead the full documentation for configuration, dependency bootstrap, hooks, automation, and the complete CLI reference.
If gji has saved you from a git stash spiral, a ⭐ on
GitHub helps other developers find it.
MIT

