An open API service indexing awesome lists of open source software.

https://github.com/dhth/commits

Glance at git commits through a simple TUI
https://github.com/dhth/commits

git tui

Last synced: 3 months ago
JSON representation

Glance at git commits through a simple TUI

Awesome Lists containing this project

README

          


commits



build status
vuln check

`commits` lets you glance at git commits through a simple TUI.


Usage

🛠️ Pre-requisites
---

- `git` (only if you want to use `commits` to see diffs)

💾 Installation
---

**go**:

```sh
go install github.com/dhth/commits@latest
```

⚡️ Usage
---

`commits` can receive its configuration via command line flags, and/or a TOML
config file. The default location for this config file is
`~/.config/commits/commits.toml`.

```toml
# commit messages that match "ignore_pattern" will not be shown in the TUI list
ignore_pattern = '^\[regex\]'

# editor_command is run when you press ctrl+d; {{revision}} is replaced at
# runtime with a revision range
editor_command = [ "nvim", "-c", ":DiffviewOpen {{revision}}" ]
```

```bash
commits -path='/path/to/git/repo'
commits -ignore-pattern='^\[regex\]'
commits -config-file-path='/path/to/config/file.toml'
```

Reference Manual
---

```
commits Reference Manual

commits has 4 views:
- Commit List View
- Commit Details View
- Branch List View
- Help View

Keyboard Shortcuts

General

Switch focus between Commit List View and Commit Details View
Open commit/revision range in your text editor (depends
on editor_command in your config file)
Clear revision range selection
Change branch
? Show help view

Commit List View

Show commit/revision range
Choose revision range start/end
Show git log

Commit Details View

Show commit/revision range
h/[ Go to previous commit
l/] Go to next commit

Branch List View

Pick branch
/ Start filtering

```

Screenshots
---

![Screen 1](https://tools.dhruvs.space/images/commits/commits-1.png)

![Screen 2](https://tools.dhruvs.space/images/commits/commits-2.png)

Acknowledgements
---

`commits` is built using [bubbletea][1].

[1]: https://github.com/charmbracelet/bubbletea