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))。 - 高准确率:在真实开源仓库中基准测试,未报告任何回归。