Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/HamzaOralK/gitten

A simple, TUI git management tool
https://github.com/HamzaOralK/gitten

git git2-rs notify-rs tui tui-rs

Last synced: 2 months ago
JSON representation

A simple, TUI git management tool

Awesome Lists containing this project

README

        

# Gitten
Gitten is git project manager with multiple repositories.

With gitten you can check out to new branches and tag branches from you active.

## Prerequisite
To build one has to have OpenSSL installed and adjust config.toml file accordingly to be able to run and
compile the project.

For mac:
```shell
brew install openssl@3
```

## Run
```shell
cargo run
```

## Usage
To change window use "r" for Repositories, "t" for Tags and "B" for branches.

And right now while you are on repositories you can do:

Fetch a remote for a repository
```shell
:fetch
```

Checkout to a new or already in place branch:
```shell
:co
```

Pull from the current selected branch from the supplied remote:
```shell
:pull
```

Create a tag from active branch:
```shell
:tag
```

While you are on a branch or a tag you can do the following to push the
selected branch or tag to the desired remote:
```shell
:push
```

To search within the selections:
```shell
/search
```

To run a command with the selected repository path:
```shell
$
```

This I use to open a path in the desired application,
```shell
$code

or

$idea

or

$open
```

## Showcase
![](gitten.gif)

## TODO
- [X] Push to remote with tags or not
- [X] Mark dirty head and allow to reset
- [X] Fetch remote
- [X] Force pull
- [X] Search within the selections
- [X] Run commands with the path
- [X] Watch for folder changes
- [ ] Add tests