5 releases (3 breaking)

0.6.0 Mar 2, 2025
0.5.1 Feb 8, 2025
0.5.0 Feb 6, 2025
0.4.0 Dec 8, 2024
0.3.1 Nov 13, 2024

#462 in Development tools

Download history 252/week @ 2024-12-04 140/week @ 2024-12-11 59/week @ 2024-12-18 26/week @ 2024-12-25 94/week @ 2025-01-01 73/week @ 2025-01-08 46/week @ 2025-01-15 36/week @ 2025-01-22 3/week @ 2025-01-29 335/week @ 2025-02-05 72/week @ 2025-02-12 31/week @ 2025-02-19 239/week @ 2025-02-26 87/week @ 2025-03-05 31/week @ 2025-03-12 26/week @ 2025-03-19

387 downloads per month

GPL-3.0-only

1MB
10K SLoC

Mergiraf

A syntax-aware git merge driver for a growing collection of programming languages and file formats.

See the documentation.

License: GPLv3


lib.rs:

Syntax aware merging of diverging files

Overview

Mergiraf is a structured merge tool. It takes three versions of a file (base, left and right) and produces a fourth version where the changes from base to left and from base to right are added. It does so with awareness of the syntax of the files, unlike Git's built-in line-based merge algorithm.

It is primarily designed to be used as a CLI which implements Git merge driver. This means that it can replace Git's default merge algorithm when merging or rebasing branches.

Using as a library to build other programs

Mergiraf is not designed to be used as a library so far, the Rust API is therefore not meant to be stable.

Dependencies

~236MB
~7M SLoC