是否有任何设计模式或现有产品用于'修订版比较'?
假设我有一位撰写详细文档(长文本)的最终用户,并且许多用户正在添加/删除文本,最终还有最终产品。我的目标是展示“进化”。文本的重点是不同的版本。
直观的方法是保存每个版本并将其与之前的版本进行比较,但我不想为每个版本复制文本。我想知道在这种情况下应该使用什么样的模式(或产品)?
这需要集成到我们的应用程序中,而不是作为外部产品,如git / svn。
答案 0 :(得分:3)
最简单的解决方案是使用版本控制,例如SVN或git。
修改强> 如果你真的想重新实现版本控制软件如何执行差异,你可以查看代码。
本书 Beautiful Code 有一篇SVN作者关于SVN如何实现diff(包含大量实际代码)的章节。这将是一个良好的开端。
http://www.red-bean.com/kfogel/beautiful-code/bc-chapter-02.html