Skip to content

Commit

Permalink
add the gix-merge crate for capturing merge algorithms
Browse files Browse the repository at this point in the history
  • Loading branch information
Byron committed Sep 11, 2024
1 parent 748fafd commit 1d3d258
Show file tree
Hide file tree
Showing 8 changed files with 39 additions and 2 deletions.
4 changes: 4 additions & 0 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -243,6 +243,7 @@ members = [
"gix-object",
"gix-glob",
"gix-diff",
"gix-merge",
"gix-date",
"gix-traverse",
"gix-dir",
Expand Down
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,10 +130,11 @@ is usable to some extent.
* [gix-submodule](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-submodule)
* [gix-status](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-status)
* [gix-worktree-state](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-worktree-state)
* `gitoxide-core`
* **very early** _(possibly without any documentation and many rough edges)_
* [gix-date](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-date)
* [gix-dir](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-dir)
* `gitoxide-core`
* **very early** _(possibly without any documentation and many rough edges)_
* [gix-merge](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-merge)
* **idea** _(just a name placeholder)_
* [gix-note](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-note)
* [gix-fetchhead](https://github.com/Byron/gitoxide/blob/main/crate-status.md#gix-fetchhead)
Expand Down
9 changes: 9 additions & 0 deletions crate-status.md
Original file line number Diff line number Diff line change
Expand Up @@ -326,6 +326,15 @@ Check out the [performance discussion][gix-diff-performance] as well.
* [ ] working with hunks of data
* [x] API documentation
* [ ] Examples

### gix-merge

* [ ] three-way merge analysis of blobs with choice of how to resolve conflicts
- [ ] choose how to resolve conflicts on the data-structure
- [ ] produce a new blob based on data-structure containing possible resolutions
- [ ] `merge` style
- [ ] `diff3` style
- [ ] `zdiff` style

[gix-diff-performance]: https://github.com/Byron/gitoxide/discussions/74

Expand Down
18 changes: 18 additions & 0 deletions gix-merge/Cargo.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
[package]
name = "gix-merge"
version = "0.0.0"
repository = "https://github.com/Byron/gitoxide"
license = "MIT OR Apache-2.0"
description = "A crate of the gitoxide project implementing merge algorithms"
authors = ["Sebastian Thiel <[email protected]>"]
edition = "2021"
rust-version = "1.65"

[lints]
workspace = true

[lib]
doctest = false

[dependencies]

1 change: 1 addition & 0 deletions gix-merge/LICENSE-APACHE
1 change: 1 addition & 0 deletions gix-merge/LICENSE-MIT
2 changes: 2 additions & 0 deletions gix-merge/src/lib.rs
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
#![deny(rust_2018_idioms)]
#![forbid(unsafe_code)]

0 comments on commit 1d3d258

Please sign in to comment.