我一直负责创建一个工具,可以比较和合并我公司产品的配置文件。配置存储为XML或URL编码的字符串。我正在寻找一个图书馆,最好是开放源代码,与商业软件兼容的许可证,可以做这些差异。我们的应用程序是用C++编写的,因此C++库会是最好的,但是我愿意查看C#特定的库,因为我可以编写一个通过COM将它公开给C++的包装器。三向差异是理想的,但双向是可以接受的。如果它理解了XML,那也是一个优点(因为XML节点可以在不更改文档的情况下重新排序)。任何图书馆建议?我是否应该考虑编写自己的差异工具,希望能够为我们的格式提供语义知识?图书馆做差异
感谢this similar question,我已经发现this google library,这看起来非常棒,但我仍在寻找其他选择。它似乎也能够输出HTML格式的差异(使用<ins>
和<del>
标签,在我发现它之前我不知道这些标签),这可能非常方便,但它似乎只是一个统一的差异。我将需要在Web浏览器中显示结果,并且可能必须构建用于在浏览器中进行合并的接口。我不希望一个图书馆能够帮助完成这些任务,但是它必须以适合我的格式生成输出结果。我目前正在设想一些沿着TortoiseMerge(并排比较,不统一)的方式,除了基于浏览器的东西。任何提示/技巧/设计想法如何呈现这将不胜感激。