mirror of
https://github.com/extrawurst/gitui.git
synced 2024-11-27 10:15:07 +03:00
Blazing 💥 fast terminal-ui for git written in rust 🦀
asyncbashcommand-line-interfacecommand-line-toolgithacktoberfestruststarred-extrawurst-repostarred-repoterminaltui
748f064733
Bumps [backtrace](https://github.com/rust-lang/backtrace-rs) from 0.3.47 to 0.3.48. - [Release notes](https://github.com/rust-lang/backtrace-rs/releases) - [Commits](https://github.com/rust-lang/backtrace-rs/compare/0.3.47...0.3.48) Signed-off-by: dependabot-preview[bot] <support@dependabot.com> |
||
---|---|---|
.github | ||
.vscode | ||
assets | ||
asyncgit | ||
scopetime | ||
src | ||
.gitignore | ||
Cargo.lock | ||
Cargo.toml | ||
CHANGELOG.md | ||
LICENSE.md | ||
Makefile | ||
README.md | ||
rustfmt.toml |
blazing fast terminal-ui for git written in rust
features
- fast and intuitive key only control
- context based help (no need to remember any hot-key)
- inspect/commit changes (incl. hooks: commit-msg/post-commit)
- (un)stage files/hunks, revert/reset files/hunk
- browse commit log
- scalable ui layout
- async input polling and
- async git API for fluid control
known limitations
- hooks don't work on windows (see #14)
- core.hooksPath config not supported
- revert/reset hunk in working dir (see #11)
motivation
I do most of my git usage in a terminal but I frequently found myself using git UIs for some use cases like: index/commit, diff, stash and log.
Over the last 2 years my go-to GUI tool for this was fork because it was not bloated, snappy and free. Unfortunately the free part will change soon and so I decided to build a fast & simple terminal tool myself to copy the fork features i am using the most.
installation
For the time being this product is considered alpha and not production ready.
release binaries
see releases
homebrew (macos)
brew install extrawurst/tap/gitui
install from source
requirements
install rust
/cargo
: https://www.rust-lang.org/tools/install
cargo install
the simplest way to start playing around with gitui
is to have cargo
build/install it:
cargo install gitui
diagnostics:
to enable logging:
GITUI_LOGGING=true gitui
this will log to:
$HOME/Library/Caches/gitui/gitui.log
(mac)$XDG_CACHE_HOME/gitui/gitui.log
(linux usingXDG
)$HOME/.cache/gitui/gitui.log
(linux)
inspiration
- https://github.com/jesseduffield/lazygit
- https://github.com/jonas/tig
- https://github.com/git-up/GitUp (would be nice to comeup with a way to have the map view available in a terminal tool)