我正在构建一个类似 wiki 的网站,并且想知道如何实现文件版本控制以创建文章历史记录。当有人编辑文件时,我希望能够显示哪些部分已被编辑,并在必要时恢复到以前的文件。
编辑:感谢您的回复。我开始浏览它们,然后我意识到我的帖子不是很精确。所以我可以补充一点,我正在使用 Java 作为开发语言(准确地说是通过 Grails 进行的 Groovy)。此外,我正在构建的应用程序不仅仅是一个 Wiki。它做了很多其他的事情,但有些部分应该可以由几个用户编辑。因此,我正在为该特定工作寻找最佳人选。
我正在构建一个类似 wiki 的网站,并且想知道如何实现文件版本控制以创建文章历史记录。当有人编辑文件时,我希望能够显示哪些部分已被编辑,并在必要时恢复到以前的文件。
编辑:感谢您的回复。我开始浏览它们,然后我意识到我的帖子不是很精确。所以我可以补充一点,我正在使用 Java 作为开发语言(准确地说是通过 Grails 进行的 Groovy)。此外,我正在构建的应用程序不仅仅是一个 Wiki。它做了很多其他的事情,但有些部分应该可以由几个用户编辑。因此,我正在为该特定工作寻找最佳人选。
你可能想看看Gollum,Github 的 git 驱动的 wiki 引擎。
说到 Git,你所需要的已经以git blame
和的形式实现了git checkout
。
即使您可以使用这些命令来完成工作,您可能会更好地使用libgit2
它基本上是您需要的所有功能,但作为库而不是可执行文件。