我正在搜索谷歌上免费的(开源的)Java差异库,并且似乎有相当多这样的库(其中一些甚至可以使用通用对象而不仅仅是字符串)。
在我浏览大量的搜索结果却找不到我想要的之前,我先在这里问一下:
这些差异库中有没有支持像cvs annotate或svn blame这样的功能。我希望能够:
- 将当前的String[]传递给一个函数; - 继续将旧版本的String[]传递给该函数,直到我耗尽了所有旧版本,或者库告诉我没有未注释的原始行(最后一件事情并不是必须的,但非常有用,因为检索旧版本的String[]很昂贵,所以我想尽早停止); - 调用一个函数,该函数为我提供一个int[],告诉我每个当前版本的行最后一次更改是在哪个版本,或者它根本没有更改(即在第一个版本中最后一次更改)。
虽然支持不是字符串的对象很好,但并不是必须的。如果API不完全是这样的,我想我可以接受。
如果没有,有人可以建议一个可扩展的差异库,可以轻松地添加这个功能,最好是那些愿意接受这个功能作为贡献的库(并且在接受贡献之前不需要填写大量文件的,就像GNU项目一样)吗?我愿意去那里(至少试着)添加它。
在我浏览大量的搜索结果却找不到我想要的之前,我先在这里问一下:
这些差异库中有没有支持像cvs annotate或svn blame这样的功能。我希望能够:
- 将当前的String[]传递给一个函数; - 继续将旧版本的String[]传递给该函数,直到我耗尽了所有旧版本,或者库告诉我没有未注释的原始行(最后一件事情并不是必须的,但非常有用,因为检索旧版本的String[]很昂贵,所以我想尽早停止); - 调用一个函数,该函数为我提供一个int[],告诉我每个当前版本的行最后一次更改是在哪个版本,或者它根本没有更改(即在第一个版本中最后一次更改)。
虽然支持不是字符串的对象很好,但并不是必须的。如果API不完全是这样的,我想我可以接受。
如果没有,有人可以建议一个可扩展的差异库,可以轻松地添加这个功能,最好是那些愿意接受这个功能作为贡献的库(并且在接受贡献之前不需要填写大量文件的,就像GNU项目一样)吗?我愿意去那里(至少试着)添加它。