Blazing 💥 fast terminal-ui for git written in rust 🦀
Go to file
2020-05-10 14:47:19 +02:00
.github fix clippy running in cd pipeline 2020-04-28 16:02:12 +02:00
.vscode update in a loop 2020-03-16 23:03:13 +01:00
assets added screenshots 2020-05-07 16:36:50 +02:00
asyncgit next version 2020-05-10 14:25:44 +02:00
scopetime Switch to a tree view for changed files list (#37) 2020-04-28 11:15:05 +02:00
src ignore ctrl+c in commit to allow quitting 2020-05-10 14:47:19 +02:00
.gitignore Switch to a tree view for changed files list (#37) 2020-04-28 11:15:05 +02:00
Cargo.lock next version 2020-05-10 14:25:44 +02:00
Cargo.toml next version 2020-05-10 14:25:44 +02:00
LICENSE.md add license 2020-03-16 15:42:56 +01:00
Makefile Log view (#41) 2020-05-05 13:47:21 +02:00
README.md added itchio shield 2020-05-07 17:32:33 +02:00
rustfmt.toml formating to shorter lines 2020-03-18 15:14:13 +01:00

CI crates MIT UNSAFE ITCH

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

inspiration