2014-06-09 43 views
2

是否有任何设计模式或“修订比较”的现有产品?设计模式版本比较

假设我有一位最终用户编写了详细的文档(长文本),许多用户正在添加/删除文本,最终还是有最终产品。我的目标是展示文字的“进化”,并强调不同的版本。

直观的方法是保存每个版本并将其与前一个版本进行比较,但我不想为每个版本都复制文本。我想知道在这种情况下应该使用什么模式(或产品)?

这需要集成到我们的应用程序中,而不是像git/svn这样的外部产品。

+1

我不知道是否有一个设计模式本身,而是像你想要写一个版本控制系统上下的计划听起来有点?可以看看git是如何实现的。 – awksp

+0

你有没有考虑过像[Bitbucket](https://bitbucket.org)或[Git](http://git-scm.com/)? –

回答

3

最简单的解决方案是使用版本控制,如SVN或git。

编辑 如果你真的想重新实现版本控制软件如何执行差异,你可以看看代码。

这本书美丽的代码有一个SVN作者之一关于SVN如何实现差异(有很多实际代码)的章节。那将是一个好的开始。

http://www.red-bean.com/kfogel/beautiful-code/bc-chapter-02.html

+0

我需要将它集成到我的应用程序中。所以git/svn将无法工作。谢谢 – adhg