필자는 회사 제품의 구성 파일을 서로 비교하고 병합 할 수있는 도구를 작성해야했습니다. 구성은 XML 또는 URL 인코딩 문자열로 저장됩니다. 나는이 diff를 할 수있는 상용 소프트웨어와 호환되는 라이센스가있는 오픈 소스 라이브러리를 찾고 있습니다. 우리의 응용 프로그램은 C++로 작성 되었기 때문에 C++ 라이브러리가 가장 좋았지 만 COM을 통해 C++에 노출시키는 래퍼를 작성할 수 있으므로 C# 전용 라이브러리를 살펴볼 수 있습니다. 3 방향 diff가 이상적이지만 양방향은 허용됩니다. XML을 이해하고 있다면 XML 노드가 문서를 변경하지 않고 재정렬 될 수 있기 때문에 더하기도 될 것입니다. 모든 도서관 제안? 필자의 형식에 대한 의미 론적 지식을 제공하기 위해 diff 도구를 직접 작성해야할까요?diffs를 수행하기위한 라이브러리
this similar question 덕분에, 나는 이미 this google library을 발견했는데, 정말 좋았지 만, 나는 여전히 다른 옵션을 찾고 있습니다. 또한 diff 형식을 HTML 형식으로 출력 할 수있는 것으로 나타났습니다 (실제로 발견하기 전에 존재하지 않는 <ins>
및 <del>
태그 사용). 이는 매우 편리 할 수 있지만 통합 된 diff 일뿐입니다. 결과를 웹 브라우저에 표시해야하고 브라우저에서 병합을 수행하기위한 인터페이스를 구축해야 할 것입니다. 도서관이 이러한 작업에 도움이 될 것으로 기대하지는 않지만,이를 위에 구축하는 형식으로 출력물을 만들어야합니다. 나는 현재 TortoiseMerge (사이드 바이 사이드 diffs, 통일되지 않음) 라인을 따라 뭔가를 구상 중이지만, 브라우저 기반을 제외하고는. 이것을 선물하는 방법에 대한 모든 팁/트릭/디자인 아이디어는 높이 평가 될 것입니다.