mamediff

Crates.iomamediff
lib.rsmamediff
version0.3.1
created_at2025-01-05 08:04:50.397766+00
updated_at2025-06-26 01:49:13.757073+00
descriptionA TUI editor for managing unstaged and staged Git diffs
homepagehttps://github.com/sile/mamediff
repositoryhttps://github.com/sile/mamediff
max_upload_size
id1504566
size555,612
Takeru Ohta (sile)

documentation

README

mamediff

mamediff Documentation Actions Status License

A TUI editor for managing unstaged and staged Git diffs. Inspired by Magit, this tool focuses on providing a simpler, specialized interface for staging, unstaging, and discarding diffs.

mamediff

Installation

Pre-built binaries

Pre-built binaries for Linux and MacOS are available in the releases page.

// An example to download the binary for Linux.
$ VERSION=0.3.0
$ curl -L https://github.com/sile/mamediff/releases/download/v${VERSION}/mamediff-${VERSION}.x86_64-unknown-linux-musl -o mamediff
$ chmod +x mamediff
$ ./mamediff -h

With Cargo

If you have installed cargo (the package manager for Rust), you can install mamediff with the following command:

$ cargo install mamediff
$ mamediff -h

Usage

Just execute mamediff command within a Git directory. The available key bindings will be displayed in the top-right corner of the window.

$ mamediff
->| Unstaged changes (1 files)                     | (q)uit [ESC,C-c]
  :   modified src/main.rs (1 chunks, -1 +1 lines) | (↓)        [C-n]
  :     @@ -1,3 +1,3 @@                            | (→)        [C-f]
  :        fn main() {                             | (t)oggle   [TAB]
  :       -    println!("Hello, World!");          | (s)tage
  :       +    println!("Hello, mamediff!");       | (D)iscard
  :        }                                       +---- (h)ide -----
  | Staged changes (0 files)

You Might Also Be Interested In

Commit count: 286

cargo fmt