An opinionated Git TUI, that makes use of worktrees rather than plain branches and provides keybindings for common actions.
Built using Go and git2go (Go bindings for libgit2) (mostly), on top of tview.
Currently it clones and manages repository in ~/dev
. For each repository, a
directory is created, with a subdirectory per branch/worktree (including the
main branch).
- Git itself.
- On macOS, git2go/libgit2 depends on pkg-config (
brew install pkg-config
).
make install
Existing Git TUIs (e.g. LazyGit) are very unopinionated, don't necessarily support worktrees and don't adapt too well to my personal workflow. Also: I wanted to see if I could write a TUI in Go.