版本控制和版本控制管理如何在Oak中运行?

时间:2016-08-08 09:06:22

标签: aem jackrabbit-oak

我们可以说OAK 1.4提供开箱即用的版本控制和版本控制管理功能吗?如果是这样,怎么样?这也意味着AEM作者可以使用相同的功能,即暴露在顶层?

1 个答案:

答案 0 :(得分:4)

Jackrabbit始终以版本管理为核心。在OAK实施中,它打包在org.apache.jackrabbit.oak.jcr.version下。

有关JackRabbit Versioning功能方面的详细信息(也适用于OAK)可以在Wiki here中找到

核心概念围绕mixin类型mix:versionable,在OAK中,任何具有混合类型mix:versionable的节点都可以进行版本化以维护更改历史记录。实现的关键方面是VersionManager类,它为版本关系操作提供API。

在AEM中,JCR版本控制的核心概念得到了扩展,并以更加有限的方式提供。 AEM允许仅限页面的版本控制,这受限于在com.day.cq.wcm.core.impl.VersionManagerImpl包中提供自己的VersionManager实现,请参阅文档here

默认情况下,在AEM中,页面的激活页面上会创建页面版本。 AEM在Classic UI中提供GUI界面以在页面上显式创建版本,并且有一个OOTB流程步骤可用于版本化,以便在自定义工作流实现中使用。