Full feature terminal based sequence editor for git interactive rebase. Written in Rust using ncurses.
Download the .deb
file from the releases page and install. The executable will be installed to /usr/bin
.
Download the interactive-rebase-tool
from the releases page and copy it to a location on your PATH
.
In your command line run:
git config --global sequence.editor interactive-rebase-tool
shell
interactive-rebase-tool --version | -v | <rebase-todo-filepath>
The tool has built in help that can be accessed by hitting the ?
key.
| Key | Description |
| ------------ | ----------- |
| Up | Move selection up |
| Down | Move selection down |
| Page Up | Move selection up five lines |
| Page Down | Move selection down five lines |
| q
| Abort interactive rebase |
| Q
| Immediately abort interactive rebase |
| w
| Write interactive rebase file |
| W
| Immediately write interactive rebase file |
| ?
| Show help |
| c
| Show commit information |
| j
| Move selected commit down |
| k
| Move selected commit up |
| p
| Set selected commit to be picked |
| r
| Set selected commit to be reworded |
| e
| Set selected commit to be edited |
| s
| Set selected commit to be squashed |
| f
| Set selected commit to be fixed-up |
| d
| Set selected commit to be dropped |
To start developing the project you will need to install Rust, which can generally be done using rustup.
You will need build-essential
and libncurses5-dev
to build the project.
Additionally you will need pkg-config
and liblzma-dev
if you wish to build
a release. They can be installed using apt-get
:
sudo apt-get install build-essential libncurses5-dev
sudo apt-get install pkg-config liblzma-dev
Use cargo to build and run the project. From the project project root run:
# only build
cargo build --release
# build and run
cargo run <path-to-git-rebase-todo-file>
Cargo Deb has not been released to creates.io so it will need to be installed from the GitHub repository.
cargo install cargo-deb
cargo build --release
cargo deb
A deb file will be written to target/debian/git-interactive-rebase-tool_*.deb
.
Git Interactive Rebase Tool is released under the ISC license. See LICENSE.