Ataraxy-Labs/weave

Entity-level git merge driver. Resolves false conflicts git invents when independent agents edit the same file. ~95% reduction vs. line-based merge.

它解决了什么

Git 默认的行级合并在两位开发者(或 AI 代理)向同一文件添加独立代码(例如不同的函数)时,常会产生“伪冲突”。Weave 通过理解代码的实际结构,而不是仅仅行号,消除这些不必要的手动解决。

它如何工作

Weave 充当 Git 的语义合并驱动。它使用 tree‑sitter 将文件解析为“实体”(如函数、类或 JSON 键),并在 base、local、remote 三个版本之间进行匹配。

它不比较行,而是在实体层面合并:如果两个不同的实体被修改,则自动解决;如果同一实体被双方修改,则尝试在实体内部合并,或以清晰的上下文标记语义冲突。对于二进制文件、不支持的类型或大于 1 MB 的文件,则回退到标准的行级合并。

适用人群

使用 Git 的软件开发者和团队,特别是使用多个 AI 代理同时修改同一代码库、希望减少处理琐碎合并冲突时间的用户。

亮点

  • 实体级解析:自动解决同一文件中本应触发 Git 冲突的独立更改。
  • 广泛语言支持:支持多种语言,包括 TypeScript、Python、Go、Rust、Java、C、C++,以及 JSON、YAML 等配置格式。
  • 语义冲突标记:当真实冲突发生时,提供描述性的标记(例如 function 'process' (both modified))。
  • 高准确率:在真实开源仓库中基准测试,未报告任何回归。