Skip to content

bmf-san/ggc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

957 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ggc

GitHub release Go Report Card codecov GitHub license Go Reference Sourcegraph CI CodeQL Dependabot Updates OpenSSF Scorecard Awesome Go

Scriptable Git shortcuts with a searchable workflow builder.

📖 Full documentation: https://bmf-san.github.io/ggc/

ggc

This logo was created by gopherize.me.

Demo

Click any GIF to view full size.

Interactive & Workflow mode CLI workflow Branch management
Interactive overview demo CLI workflow demo Branch management demo
Fuzzy-search every ggc command, then press Tab to queue them into a workflow and Ctrl+T to run the pipeline. Traditional one-shot commands: ggc status, ggc add, ggc commit "<msg>", ggc log simple. Create and switch branches with plain verbs; interactive pickers appear when arguments are omitted.

Overview

ggc gives you short, scriptable Git shortcuts and a searchable workflow builder. Run ggc <subcommand> directly for one-shot commands, drop them into shell scripts, or type ggc on its own to open a fuzzy picker where you can search every command, queue several into a workflow, and run them as a pipeline.

Supported: macOS (amd64 / arm64 / universal), Linux (amd64 / arm64), Windows (amd64). Requires Git and Go 1.25+ to build.

Why ggc instead of raw git, lazygit, tig, or gitui?

Git already has great TUIs and helpers — ggc fills a different niche. It is the only one of these that is both scriptable on the command line and searchable as an interactive workflow builder:

  • Compose multi-step workflows, then run or reuse them. Search commands in the fuzzy picker, press Tab to queue addcommitpush, and Ctrl+T to run the pipeline. lazygit/gitui drive one action at a time; tig is read-focused.
  • Same tool in scripts and in CI. ggc commit "fix: parser" or ggc branch checkout main work non-interactively, so the shortcuts you learn interactively drop straight into shell scripts and pipelines. The TUI tools are interactive-only.
  • Memorable verbs over flag soup. ggc rebase interactive, ggc stash pop, ggc clean interactive replace hard-to-remember git flag combinations, while still falling back to raw git for anything ggc doesn't cover.
  • Review workflows before running them. Queue commands in the workflow builder and see the full step list in the workflow view before you execute the pipeline.

Destructive operations

Many ggc subcommands wrap destructive Git actions. Know how each behaves before relying on it:

  • clean asks first. Interactive clean shows the files it will remove and prompts for confirmation (Delete these files? (y/n)) before deleting.
  • Other destructive commands run immediately. branch delete, tag deletion, and stash drop/stash clear execute right away without a separate confirmation step — treat them like the underlying git commands.
  • reset is a shortcut, not a passthrough. Bare ggc reset performs a hard reset to the upstream branch and cleans the working tree (reset --hard + clean); ggc reset hard <commit> and ggc reset soft <commit> map to the corresponding git reset. These discard changes without prompting.
  • Review workflows before executing. The workflow view lists every queued step so you can inspect (and rebuild) a pipeline before running it.

See the interactive mode & workflows guide for details.

Full documentation lives at https://bmf-san.github.io/ggc/:

Install

# quick install (macOS / Linux)
curl -sSL https://raw.githubusercontent.com/bmf-san/ggc/main/install.sh | bash

# or Homebrew
brew install ggc

# or Go
go install github.com/bmf-san/ggc/v8@latest

Windows binaries, pre-built archives, and source builds are covered in the installation guide. After installing, run ggc doctor to verify.

References

Contributing

See CONTRIBUTING.md and CODE_OF_CONDUCT.md for details.

Sponsor

If you’d like to support my work, please consider sponsoring me!

GitHub Sponsors – bmf-san

Or simply giving ⭐ on GitHub is greatly appreciated—it keeps me motivated to maintain and improve the project! :D

Stargazers

Stargazers repo roster for @bmf-san/ggc

Forkers

Forkers repo roster for @bmf-san/ggc

License

This project is licensed under the MIT License - see the LICENSE.md file for details.

About

A modern Git CLI tool with both traditional command-line and interactive incremental-search UI.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Packages

 
 
 

Contributors

Languages