mirror of
https://github.com/uutils/diffutils.git
synced 2026-05-08 06:59:57 -04:00
59e130aa22
Co-authored-by: codspeed-hq[bot] <117304815+codspeed-hq[bot]@users.noreply.github.com>
58 lines
1.8 KiB
Markdown
58 lines
1.8 KiB
Markdown
[](https://crates.io/crates/diffutils)
|
|
[](https://discord.gg/wQVJbvJ)
|
|
[](https://github.com/uutils/diffutils/blob/main/LICENSE)
|
|
[](https://deps.rs/repo/github/uutils/diffutils)
|
|
[](https://codspeed.io/uutils/diffutils?utm_source=badge)
|
|
|
|
[](https://codecov.io/gh/uutils/diffutils)
|
|
|
|
The goal of this package is to be a drop-in replacement for the [diffutils commands](https://www.gnu.org/software/diffutils/) (diff, cmp, diff3, sdiff) in Rust.
|
|
|
|
Based on the incomplete diff generator in https://github.com/rust-lang/rust/blob/master/src/tools/compiletest/src/runtest.rs, and made to be compatible with GNU's diff and patch tools.
|
|
|
|
|
|
## Installation
|
|
|
|
Ensure you have Rust installed on your system. You can install Rust through [rustup](https://rustup.rs/).
|
|
|
|
Clone the repository and build the project using Cargo:
|
|
|
|
```bash
|
|
git clone https://github.com/uutils/diffutils.git
|
|
cd diffutils
|
|
cargo build --release
|
|
```
|
|
|
|
## Example
|
|
|
|
```bash
|
|
|
|
cat <<EOF >fruits_old.txt
|
|
Apple
|
|
Banana
|
|
Cherry
|
|
EOF
|
|
|
|
cat <<EOF >fruits_new.txt
|
|
Apple
|
|
Fig
|
|
Cherry
|
|
EOF
|
|
|
|
$ cargo run -- -u fruits_old.txt fruits_new.txt
|
|
Finished dev [unoptimized + debuginfo] target(s) in 0.00s
|
|
Running `target/debug/diffutils -u fruits_old.txt fruits_new.txt`
|
|
--- fruits_old.txt
|
|
+++ fruits_new.txt
|
|
@@ -1,3 +1,3 @@
|
|
Apple
|
|
-Banana
|
|
+Fig
|
|
Cherry
|
|
|
|
```
|
|
|
|
## License
|
|
|
|
diffutils is licensed under the MIT and Apache Licenses - see the `LICENSE-MIT` or `LICENSE-APACHE` files for details
|