Command Line Tools
TUIs
- lazygit: simple terminal UI for git commands
- tig: ncurses-based text-mode interface for git
- forgit: A utility tool powered by fzf for using git interactively
- gitu: A TUI Git client inspired by Magit
- gitui: Blazing fast terminal-ui for Git written in Rust
Manage Git history
- git-absorb: git commit --fixup, but automatic
- git-filter-repo: Quickly rewrite git repository history (filter-branch replacement)
- git-imerge: Incremental merge for Git
- mergiraf: A syntax-aware git merge driver for a growing collection of programming languages and file formats.
- git-branchless: Branchless workflow for Git
Shell prompt integrations
These let you put your current Git branch (and more) in your shell prompt:
- Starship: The minimal, blazing-fast, and infinitely customizable prompt for any shell!
- git-prompt.sh: Bash prompt that comes with Git
Manage large files
Diff tools
- delta: A syntax highlighting pager for Git diffs
- difftastic: A structural diff that understands syntax
- diff-so-fancy: diff-so-fancy strives to make your diffs human readable instead of machine readable
Manage hooks
- pre-commit: A framework for managing and maintaining multi-language pre-commit hooks.
- lefthook: A fast Git hooks manager written in Go
Collections of Git tools
- git-extras: Git repo summary, repl, changelog population, author commit percentages and more
- git-toolbelt: A suite of useful Git commands that aid with scripting or every day command line usage
Other
- mob.sh: Fast git handover for remote pair/mob programming.
- git-secrets: Prevents you from committing secrets and credentials into git repositories
- Commitizen: Create committing rules for projects, auto bump versions and auto changelog generation
- git-town: Additional Git commands that automate the creation, synchronization, shipping, and cleanup of Git branches