2020-03-19 03:36:27 +03:00
# gitui
2020-03-18 13:40:54 +03:00
blazing fast terminal-ui for git written in rust
2020-03-16 19:20:28 +03:00
2020-03-18 02:58:31 +03:00
![img ](assets/main.jpg )
## 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
2020-03-18 03:23:39 +03:00
Over the last 2 years my go to GUI tool for this was [fork ](https://git-fork.com ) because it was not bloated, snappy and free. Unfortunately the *free* part will [change soon ](https://github.com/ForkIssues/TrackerWin/issues/571 ) and so I decided to build a fast & simple terminal tool myself to copy the fork features i am using the most.
2020-03-18 02:23:06 +03:00
2020-03-16 19:20:28 +03:00
# todo
2020-03-18 19:43:40 +03:00
* [x] (un)stage files
2020-03-18 13:34:16 +03:00
* [x] inspect diffs
* [x] commit
2020-03-19 15:19:18 +03:00
* [x] [input polling in thread ](assets/perf_compare.jpg )
2020-03-19 16:36:21 +03:00
* [ ] allow focus on diff to scroll
2020-03-19 16:19:09 +03:00
* [ ] show content of new files
* [ ] indicate file status (modified,added,removed)
2020-03-19 16:22:15 +03:00
* [ ] discard untracked files (remove)
2020-03-19 16:18:00 +03:00
* [ ] use [notify ](https://crates.io/crates/notify ) to watch git
2020-03-16 19:22:26 +03:00
* [ ] log view
2020-03-16 20:25:53 +03:00
2020-03-18 02:58:31 +03:00
# resources (quick links)
2020-03-16 20:25:53 +03:00
2020-03-18 02:23:06 +03:00
* https://docs.rs/git2/
2020-03-16 20:25:53 +03:00
* https://libgit2.org
2020-03-18 02:23:06 +03:00
* https://docs.rs/tui/
2020-03-18 02:58:31 +03:00
* https://docs.rs/crossterm/
# alternatives
2020-03-18 03:01:38 +03:00
* https://github.com/jesseduffield/lazygit