Orchard CMS - 如何同步生产和本地仪表板项目更改

Nic*_*sen 4 ftp orchardcms

如果有一个本地构建的Orchard CMS - 故意从完整源代码构建,那么我可以编写自己的扩展/进行自己的更改 - 这是否意味着我永远不能通过已发布的生产运行实例对站点进行仪表板更改?

问题是,如果我通过生产网站在线安装模块(或10或100)或主题,那么这些不会反映在我的本地副本中,那么两者如何同步?所以答案是明智的"你当然不能"吗?但这意味着永远无法利用简单地跳过任何浏览器(例如在旅行时等)来进行必要时的更改(当然,有许多内容,例如编辑内容,只需更改数据库,这不是我关注的).

或者是否有一种简单的方法来同步本地和远程源(通过ftp我确定,在这种情况下从远程同步到本地),是否以及何时通过生产实例进行更改?如果是这样,那么有什么先决条件,例如,我必须转而对其进行预先补偿吗?或者选项是严格的两个:1)始终从本地副本工作并从那里发布更改(总是),或2)始终从生产/非本地实例工作,但这意味着实际上你没有/甚至没有本地实例?

ps这是一个共享的azure网站发布,我在Visual Studio 2012(不是webmatrix)工作

Ber*_*Roy 6

简而言之,最好的做法是在开发框中更改代码,并在生产中更改数据.添加到源控件和数据库备份以进行回滚功能和灾难恢复.我们将通过启用数据暂存来尽快改进该故事,但目前这是最佳实践.所以:

  1. 永远不要在生产中安装模块(这是代码更改,所以应该在dev上完成).当然,一旦在dev或staging中验证了其正确的行为,就必须在生产中完成模块的启用.
  2. 除非您愿意在站点之间导出/导入该数据,否则请更新站点上的prod数据.
  3. 使用草稿(保存与发布按钮)功能来准备新版本的内容.
  4. 定期将prod数据库恢复到开发框中,以便在dev中使用合理的最新数据.