Blazing 💥 fast terminal-ui for git written in rust 🦀
Go to file
dependabot-preview[bot] 2311098a17 Bump git2 from 0.13.3 to 0.13.4
Bumps [git2](https://github.com/rust-lang/git2-rs) from 0.13.3 to 0.13.4.
- [Release notes](https://github.com/rust-lang/git2-rs/releases)
- [Commits](https://github.com/rust-lang/git2-rs/compare/0.13.3...0.13.4)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2020-04-24 14:19:41 +02:00
.github fix new clippy warning 2020-04-24 07:41:48 +02:00
.vscode update in a loop 2020-03-16 23:03:13 +01:00
assets new gif 2020-04-21 19:35:29 +02:00
asyncgit Bump git2 from 0.13.3 to 0.13.4 2020-04-24 14:19:41 +02:00
scopetime stricter warning leves 2020-03-26 13:26:40 +01:00
src fix new clippy warning 2020-04-24 07:41:48 +02:00
.gitignore update ignore 2020-03-19 14:22:02 +01:00
Cargo.lock Bump git2 from 0.13.3 to 0.13.4 2020-04-24 14:19:41 +02:00
Cargo.toml next version 2020-04-23 09:00:49 +02:00
LICENSE.md add license 2020-03-16 15:42:56 +01:00
Makefile next try 2020-04-19 19:27:39 +02:00
README.md use xdg convention for log file location putting it in .cache (see #27) 2020-04-22 14:31:54 +02:00
rustfmt.toml formating to shorter lines 2020-03-18 15:14:13 +01:00

CI crates MIT UNSAFE

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
  • 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.

homebrew

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 using XDG)
  • $HOME/.cache/gitui/gitui.log (linux)

inspiration