Rust 기반 오픈소스 Git diff 도구 OmniDiff 공개

원제: Show HN: OmniDiff – Opensource, super fast, content aware Git difftool, in Rust

왜 중요한가

코드 리뷰 품질을 높이는 구조 인식 diff 도구 시장에서 Rust 기반 오픈소스 대안이 등장해 개발 도구 생태계 선택지가 넓어졌다.

개발자 ivankovic가 Rust로 작성한 콘텐츠 인식 Git diff 도구 OmniDiff를 GitHub에 오픈소스로 공개했다. 코드 변경의 99.95%를 처리하며, 98.8%는 콘텐츠별 전용 알고리즘을 적용한다. Intel Core i7-1370P 기준 100ms 이내 처리 속도를 달성한다고 밝혔다.

OmniDiff는 기존 텍스트 기반 diff와 달리 파일 형식을 인식해 AST(추상 구문 트리) 수준의 구조적 비교를 수행하는 Git difftool이다. 개발자 ivankovic이 Rust로 작성했으며, 터미널 UI 라이브러리 ratatui를 활용해 인터페이스를 구성했다.

공개된 벤치마크에 따르면 코드 파일에서 정확도 98%, 이미지(PNG 등 Pictures) 96%, 폰트 파일 95%, 아카이브 88%의 처리율을 기록했다. 커서 파일과 메시지 카탈로그는 100% 처리가 가능하다. 비교 대상은 T14s 노트북(Intel Core i7-1370P, 32GB RAM)에서 측정됐다.

프로젝트는 현재 GitHub에서 스타 303개, 포크 6개를 기록 중이며, 1,514건의 커밋 이력을 갖추고 있다. 라이선스는 오픈소스와 상용 라이선스 두 종류를 병행 제공한다. 소스코드, 쇼케이스 페이지, 기여 가이드라인이 공개돼 있으며 이슈 4건, PR 5건이 진행 중이다.

지원 파일 형식은 코드, 이미지, 폰트, 아카이브, PDF, 메시지 카탈로그 등 다양하다. PDF의 경우 판정 테스트 케이스 수가 10건 미만으로 통계적 신뢰도가 낮다고 README에서 직접 명시하고 있다.

출처

github.com — 원문 읽기 →