4 releases (2 breaking)

new 0.5.1 Feb 8, 2025
0.5.0 Feb 6, 2025
0.4.0 Dec 8, 2024
0.3.1 Nov 13, 2024

#1062 in Development tools

Download history 107/week @ 2024-11-08 112/week @ 2024-11-15 41/week @ 2024-11-22 44/week @ 2024-11-29 282/week @ 2024-12-06 123/week @ 2024-12-13 35/week @ 2024-12-20 53/week @ 2024-12-27 86/week @ 2025-01-03 65/week @ 2025-01-10 36/week @ 2025-01-17 25/week @ 2025-01-24 75/week @ 2025-01-31 269/week @ 2025-02-07

418 downloads per month

GPL-3.0-only

1MB
9K 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

~189MB
~5.5M SLoC