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

https://github.com/erdavila/git-interactive-rebase-editor

A visual helper for Git interactive rebase
https://github.com/erdavila/git-interactive-rebase-editor

cli git git-rebase interactive rebase tui

Last synced: 5 months ago
JSON representation

A visual helper for Git interactive rebase

Awesome Lists containing this project

README

          

# git-interactive-rebase-editor
A visual helper for Git interactive rebase.

![Screenshot](screenshot.png)

## Installing and building
1. Clone this repository
2. Build it with `cargo build --release`
3. Copy `./target/release/git-interactive-rebase-editor` to your desired location.

Alternativelly, use `cargo` to build and install at once:

```sh
cargo install --path
```

or:

```sh
cargo install --git https://github.com/erdavila/git-interactive-rebase-editor.git
```

See the options for [`cargo install`](https://doc.rust-lang.org/cargo/commands/cargo-install.html).

## Using it

### Single use
Use the `sequence.editor` configuration when rebasing:

```sh
git -c sequence.editor= rebase -i ...
```

### With an alias

Define an alias:
```sh
git config --global alias.rebase-i "-c sequence.editor= rebase -i"
```

then rebase with:

```sh
git rebase-i ...
```

### Permanent use

Set the editor:

```sh
git config --global sequence.editor=
```

then rebase with:

```sh
git rebase -i ...
```

### Platform Specifics

#### Git Bash
Start the `` without `/` and with drive name.

E.g.: use `C:/...` instead of `/c/...`.

#### Cygwin
Cygwin requires the `git-interactive-rebase-editor.sh` adapter script to ensure that the editor receives a path in Windows format.

1. copy [`git-interactive-rebase-editor.sh`](./git-interactive-rebase-editor.sh) to the same place where the binary is located;
2. in the commands above, for `` use the path to `git-interactive-rebase-editor.sh` instead of the path to the binary.