mirror of
https://github.com/frontaid/git-cli-tools.git
synced 2024-11-13 19:04:30 +01:00
97 lines
7.8 KiB
Markdown
97 lines
7.8 KiB
Markdown
# Git CLI Tools
|
||
Collection of CLI tools for Git.
|
||
Feel free to contribute.
|
||
|
||
## Clients
|
||
* [fugitive.vim](https://github.com/tpope/vim-fugitive) - Git plugin for *Vim*.
|
||
* [gitin](https://github.com/isacikgoz/gitin) - Commit/branch/workdir explorer for git.
|
||
* [GitUI](https://github.com/Extrawurst/gitui) - Blazing fast terminal-ui for git written in rust.
|
||
* [lazygit](https://github.com/jesseduffield/lazygit) - Simple terminal UI for git commands.
|
||
* [Magit](https://github.com/magit/magit) - Git porcelain inside *Emacs*.
|
||
* [Neogit](https://github.com/TimUntersberger/neogit) - Magit for *neovim*.
|
||
* [tig](https://github.com/jonas/tig) - Text-mode interface for git.
|
||
|
||
## Autocomplete
|
||
* [bit](https://github.com/chriswalz/bit) - Modern Git CLI.
|
||
* [gitsome](https://github.com/donnemartin/gitsome) - Supercharged Git command line interface (CLI). <!-- intentionally duplicated as it is two tools in one package -->
|
||
|
||
## Diff
|
||
* [delta](https://github.com/dandavison/delta) - Viewer for git and diff output.
|
||
* [diff-so-fancy](https://github.com/so-fancy/diff-so-fancy) - Strives to make your diffs human readable instead of machine readable.
|
||
* [Difftastic](https://github.com/Wilfred/difftastic) - Experimental diff tool that compares files based on their syntax.
|
||
|
||
## Undo/Fixup
|
||
* [BFG Repo-Cleaner](https://github.com/rtyley/bfg-repo-cleaner) - Removes large or troublesome blobs.
|
||
* [git revise](https://github.com/mystor/git-revise) - Tool for doing efficient in-memory commit rebases & fixups.
|
||
* [git-absorb](https://github.com/tummychow/git-absorb) - git commit --fixup, but automatic.
|
||
* [git-autofixup](https://github.com/torbiak/git-autofixup/) - Create fixup commits for topic branches.
|
||
* [git-fixup](https://github.com/keis/git-fixup) - Fighting the copy-paste element of your rebase workflow.
|
||
* [gitjk](https://github.com/mapmeld/gitjk) - Undo what you just did in git.
|
||
* [ugit](https://github.com/Bhupesh-V/ugit) - Helps undo git commands.
|
||
|
||
## Merge/Rebase
|
||
* [Git Interactive Rebase Tool](https://github.com/MitMaro/git-interactive-rebase-tool) - Native cross-platform full feature terminal-based sequence editor for git interactive rebase.
|
||
* [git when-merged](https://github.com/mhagger/git-when-merged) - Determine when a particular commit was merged into a git branch.
|
||
* [git-fiddle](https://github.com/felixSchl/git-fiddle) - Edit commit messages, authors, and timestamps during git-rebase.
|
||
* [git-imerge](https://github.com/mhagger/git-imerge) - Incremental merge and rebase for Git.
|
||
|
||
## Hooks
|
||
* [Git Hound](https://github.com/ezekg/git-hound) - Git plugin that prevents sensitive data from being committed.
|
||
* [git-secrets](https://github.com/awslabs/git-secrets) - Prevents you from committing secrets and credentials into git repositories.
|
||
* [husky](https://github.com/typicode/husky) - Modern native Git hooks made easy.
|
||
* [overcommit](https://github.com/sds/overcommit) - Fully configurable and extendable Git hook manager.
|
||
* [pre-commit](https://github.com/pre-commit/pre-commit) - Framework for managing and maintaining multi-language pre-commit hooks.
|
||
|
||
## Project Management
|
||
* [git-appraise](https://github.com/google/git-appraise) - Distributed code review system for Git repos.
|
||
* [git-bug](https://github.com/MichaelMure/git-bug) - Distributed, offline-first bug tracker embedded in git, with bridges.
|
||
|
||
## Utilities
|
||
* [Git extras](https://github.com/tj/git-extras) - Repo summary, repl, changelog population, author commit percentages and more.
|
||
* [Git plus](https://github.com/tkrajina/git-plus) - Set of git utilities.
|
||
* [Git Town](https://github.com/git-town/git-town) - Generic, high-level Git workflow support.
|
||
* [git trim](https://github.com/jasonmccreary/git-trim) - Quickly remove merged, pruned, untracked, or stale branches within a repository.
|
||
* [git-fresh](https://github.com/imsky/git-fresh) - Keep your Git repo fresh.
|
||
* [git-friendly](https://github.com/git-friendly/git-friendly) - Collection of shell scripts for making pulling, pushing, branching, merging, and stashing with Git fast and painless.
|
||
* [git-open](https://github.com/paulirish/git-open) - Open the repo website (GitHub, GitLab, Bitbucket) in your browser.
|
||
* [git-recall](https://github.com/Fakerr/git-recall) - Interactive way to peruse your git history from the terminal.
|
||
* [git-recent](https://github.com/paulirish/git-recent) - See your latest local git branches.
|
||
* [git-toolbelt](https://github.com/nvie/git-toolbelt) - Suite of useful Git commands that aid with scripting or every day command line usage.
|
||
* [legit](https://github.com/frostming/legit) - Git for Humans, Inspired by GitHub for Mac.
|
||
|
||
## Multi Repo
|
||
* [Gita](https://github.com/nosarthur/gita) - Command-line tool to manage multiple git repos.
|
||
* [gitbatch](https://github.com/isacikgoz/gitbatch) - Manage your git repositories in one place.
|
||
* [gitup](https://github.com/earwig/git-repo-updater) - Console script that allows you to easily update multiple git repositories at once.
|
||
* [mgitstatus](https://github.com/fboender/multi-git-status) - Show uncommitted, untracked and unpushed changes for multiple Git repos.
|
||
* [mu-repo](https://github.com/fabioz/mu-repo/) - Tool to help in dealing with multiple git repositories.
|
||
* [vcstool](https://github.com/dirk-thomas/vcstool) - Command line tool designed to make working with multiple repositories easier.
|
||
|
||
## Metrics
|
||
* [GIT quick statistics](https://github.com/arzzen/git-quick-stats) - Simple and efficient way to access various statistics in git repository.
|
||
* [git-cal](https://github.com/k4rthik/git-cal) - GitHub like contributions calendar on terminal.
|
||
* [git-sizer](https://github.com/github/git-sizer) - Compute various size metrics for a Git repository, flagging those that might cause problems.
|
||
* [git-stats](https://github.com/IonicaBizau/git-stats) - Local git statistics including GitHub-like contributions calendars.
|
||
* [onefetch](https://github.com/o2sh/onefetch) - Git repository summary on your terminal.
|
||
|
||
## Git Flow
|
||
* [git-flow](https://github.com/nvie/gitflow) - Git extensions to provide high-level repository operations for Vincent Driessen's branching model.
|
||
* [gitflow-avh](https://github.com/petervanderdoes/gitflow-avh) - Git extensions to provide high-level repository operations for Vincent Driessen's branching model.
|
||
|
||
## GitHub
|
||
* [GitHub CLI](https://github.com/cli/cli/) - GitHub’s official command line tool.
|
||
* [gitsome](https://github.com/donnemartin/gitsome) - Supercharged GitHub command line interface (CLI). <!-- intentionally duplicated as it is two tools in one package -->
|
||
* [hub](https://github.com/github/hub) - Command-line tool that makes git easier to use with GitHub.
|
||
|
||
## Miscellaneous
|
||
* [ghq](https://github.com/x-motemen/ghq) - Remote repository management made easy.
|
||
* [git filter-repo](https://github.com/newren/git-filter-repo) - Quickly rewrite git repository history (filter-branch replacement).
|
||
* [Git Large File Storage](https://github.com/git-lfs/git-lfs) - Git extension for versioning large files.
|
||
* [git-annex](https://git-annex.branchable.com/) - Managing files with git, without checking the file contents into git.
|
||
* [git-branchless](https://github.com/arxanas/git-branchless) - Suite of tools to help you visualize, navigate, manipulate, and repair your commit history.
|
||
* [git-chglog](https://github.com/git-chglog/git-chglog) - CHANGELOG generator implemented in Go (Golang).
|
||
* [git-crypt](https://github.com/AGWA/git-crypt) - Transparent file encryption in git.
|
||
* [git-issue](https://github.com/dspinellis/git-issue) - Git-based decentralized issue management.
|
||
* [git-secret](https://github.com/sobolevn/git-secret) - Bash-tool to store your private data inside a git repository.
|
||
* [git-sim](https://github.com/initialcommit-com/git-sim) - Visually simulate Git operations in your own repos with a single terminal command.
|
||
* [git-standup](https://github.com/kamranahmedse/git-standup) - Recall what you (or someone else in your team) did on the last working day.
|