Skip to content

Commit a672cac

Browse files
authored
Merge pull request #18 from MitMaro/development-docs
Added some development documentation
2 parents 32e4801 + 7c69cfb commit a672cac

1 file changed

Lines changed: 47 additions & 2 deletions

File tree

README.md

Lines changed: 47 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ Full feature terminal based sequence editor for git interactive rebase. Written
66

77
## Install
88

9-
#### Debian (and similar)
9+
#### Debian and derivatives
1010

1111
Download the `.deb` file from the releases page and install. The executable will be installed to `/usr/bin`.
1212

@@ -26,7 +26,6 @@ In your command line run:
2626

2727
The tool has built in help that can be accessed by hitting the `?` key.
2828

29-
3029
### Key Bindings
3130

3231
| Key | Description |
@@ -49,6 +48,52 @@ The tool has built in help that can be accessed by hitting the `?` key.
4948
| `f` | Set selected commit to be fixed-up |
5049
| `d` | Set selected commit to be dropped |
5150

51+
52+
## Development
53+
54+
### Install Rust
55+
56+
To start developing the project you will need to [install Rust](https://doc.rust-lang.org/book/getting-started.html),
57+
which can generally be done using [rustup](https://www.rustup.rs/).
58+
59+
### Setup
60+
61+
#### Debian and derivatives
62+
63+
You will need `build-essential` and `libncurses5-dev` to build the project.
64+
Additionally you will need `pkg-config` and `liblzma-dev` if you wish to build
65+
a release. They can be installed using `apt-get`:
66+
67+
sudo apt-get install build-essential libncurses5-dev
68+
sudo apt-get install pkg-config liblzma-dev
69+
70+
71+
### Build and run
72+
73+
Use cargo to build and run the project. From the project project root run:
74+
75+
# only build
76+
cargo build --release
77+
# build and run
78+
cargo run <path-to-git-rebase-todo-file>
79+
80+
81+
### Release
82+
83+
##### Install Cargo Deb
84+
85+
Cargo Deb has not been released to creates.io so it will need to be installed from the GitHub repository.
86+
87+
cargo install --git https://github.com/mmstick/cargo-deb
88+
89+
90+
##### Building
91+
92+
cargo build --release
93+
cargo deb
94+
95+
A deb file will be written to `target/debian/git-interactive-rebase-tool_*.deb`.
96+
5297
## License
5398

5499
Git Interactive Rebase Tool is released under the ISC license. See [LICENSE](LICENSE).

0 commit comments

Comments
 (0)