diff options
author | tummychow <tummychow@users.noreply.github.com> | 2018-03-10 23:34:33 -0800 |
---|---|---|
committer | tummychow <tummychow@users.noreply.github.com> | 2018-03-10 23:34:33 -0800 |
commit | c762947399bd3ed7b73d8be9489bdb91f43590da (patch) | |
tree | 1394751ac188d4d18df6340d443b11b9e6683486 | |
parent | b60fd38bc8b932ee439f6a8393f4bd8dc8d3e4ad (diff) |
add install notes and crates badge
-rw-r--r-- | README.md | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -1,5 +1,7 @@ # git absorb +![crates.io badge](https://img.shields.io/crates/v/git-absorb.svg) + This is a port of Facebook's [`hg absorb`](https://bitbucket.org/facebook/hg-experimental/src/default/hgext3rd/absorb/__init__.py?at=default&fileviewer=file-view-default), which I first read about on [mozilla.dev.version-control](https://groups.google.com/forum/#!msg/mozilla.dev.version-control/nh4fITFlEMk/ZNXgnAzxAQAJ). ## Elevator Pitch @@ -14,3 +16,14 @@ git rebase -i --autosquash `git absorb` will automatically identify which commits are safe to modify, and which indexed changes belong to each of those commits. It will then write `fixup!` commits for each of those changes. You can check its output manually if you don't trust it, and then fold the fixups into your feature branch with git's built-in autosquash functionality. +## Installing + +You will need the following: + +- [cargo](https://github.com/rust-lang/cargo) +- [CMake](https://cmake.org) +- libgit2 [optional dependencies](https://github.com/libgit2/libgit2#optional-dependencies) + +Then `cargo install git-absorb`. Make sure that `$CARGO_HOME/bin` is on your `$PATH` so that git can find the command. (`$CARGO_HOME` defaults to `~/.cargo`.) + +Note that `git absorb` does _not_ use the system libgit2. This means you do not need to have libgit2 installed to build or run it. However, this does mean you have to be able to build libgit2, hence the build-time dependency on CMake. |