【问题标题】:Umbraco Bi-directional DeploymentUmbraco 双向部署
【发布时间】:2016-12-14 20:27:28
【问题描述】:

我正在使用 Umbraco 7.4.x。我一直在尝试找出进行双向部署的最佳方式。

例如,我们有不止一个开发人员在本地工作,我们有一个开发服务器和一个实时服务器。我们有从本地到开发的单击部署,但这只是代码。我们将数据库复制到 dev,但现在我们也有需要在 dev 上输入内容的人。这导致我们也对开发数据库进行更改并复制数据库。当然,我们通过版本控制来完成这一切,但这仍然非常不方便。

有没有更好的方法来解决这个问题?几个月前我尝试使用 usync,但我们经常遇到崩溃。

我听说过 Courier,它似乎很适合从开发/阶段部署到生产,但它也适用于将内容/文档类型更改推送到我们的本地机器吗?我不确定,因为它们不是 Internet 上的 Web 服务器,而只是通过 Visual Studios 运行的本地 IIS Express

提前致谢!

【问题讨论】:

标签: umbraco umbraco7


【解决方案1】:

我们使用 uSync (uSync + uSync.ContentEdition - https://our.umbraco.org/projects/developer-tools/usync/) 在实例之间移动所有内容。再试一次,因为它与您过去探索它时的点不同。值得一提的是,它需要在不同的环境下进行良好的配置,以避免冲突等。

您也可以使用 Courier,它的最新版本由 Umbraco Cloud (http://umbraco.io/) 使用,您可能也会感兴趣,因为它可以让您完全控制部署过程在多个 Umbraco 实例之间。

【讨论】:

    【解决方案2】:

    一种选择是让您的所有开发人员都设置为使用同一个开发数据库。有时,您的开发人员可能必须“重新发布整个站点”或重新索引检查索引以确保他们的所有缓存和 TEMP 文件都是最新的。否则,这对我们多年来一直运作良好。其中一个令人沮丧的部分是,开发人员 A 上传的媒体文件不会立即出现在开发人员 B 的文件系统上。您应该能够将媒体移动到 azure blob 存储以解决此问题。有一个包可以帮助设置它here

    我不会推荐 uSync.ContentEdition。我没有亲自尝试过,但我还没有听到关于它的好报告。另一方面,uSync 对我们来说是救命稻草,即使它并不完美。此时,我们会在每个站点上安装 usync,即使我们从未将其配置为读取更改。我们喜欢我们可以在源代码控制中记录我们对文档类型和数据类型的更改。使用共享数据库设置意味着我们不需要 usync 在我们的开发和本地环境中读取。但是,您需要确保您的开发人员都了解 usync。如果 dev A 添加了一个 doc 类型,则该 doc 类型的 usync .def 文件可能会显示在 dev B 的文件系统上。在这种情况下,Dev B 不应提交该 usync 文件。

    Courier 最近工作得好多了。除非您正在运行 umbraco 7 并且可以获得最新版本的 Courier,否则我不会推荐它。 Courier 非常有用,但是在将其交给客户之前,您应该对其进行大量测试,因为 Courier 使您能够在很大程度上击中自己的脚。它肯定有所改善。在 umbraco 6 的 Courier 中,我曾经不得不非常努力地部署而不破坏我的站点。现在,在 umbraco7 的 Courier 中,我必须非常努力地打破它。现在,这是将内容更改部署到生产环境的可行选项。只需确保在生产环境中使用它之前对其进行大量测试。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-11-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-22
      • 1970-01-01
      相关资源
      最近更新 更多