[英]Sitecore Config Files + Project Setup
我们正在将sitecore更新到8.2,在此过程中,我正在尝试完善源代码控制和开发工作流程。
目标1.为支持dll,配置,lic等提供单一的事实来源。2.在源代码管理中拥有所有内容,以重建从开发人员到产品的整个网站。 (不包括软件包)。
为了拥有各种机器所需的所有不同配置,我创建了gulp任务,这些任务会在构建时转换配置(dev,staging,prod)。 这些转换后的配置将放置在项目中的文件夹中,然后用于替换目标计算机上的原始文件。 该文件夹发布了其所有内容,到目前为止似乎运行良好。
我不知道如何处理所有不变的配置文件。
最好将所有这些.config文件包括在项目中以便它们发布吗? 如果不是,则必须手动管理目标计算机文件夹(似乎是个坏主意)或用于确保配置最新的脚本(更多的自定义。默认情况下不是个好主意)。
在项目中包括所有配置的唯一缺点(我看到的)是它将增加文件搜索的权重(这似乎不是一个很强的论点)。
我没看到什么吗?
您其他Sitecore员工如何处理此问题?
格雷戈里
根据一般经验, 请勿将任何默认文件检入Source Control。
主要原因是: 膨胀,使从源代码管理中进行同步/下载花费的时间更长,并且需要进行升级,这是更重要的原因。
如果/将来进行升级,如果您没有将任何Sitecore文件签入源代码管理中,则只需部署一个新的/干净的Sitecore实例,修复自己代码中的所有冲突,然后再进行部署。 您不必尝试找出发行版之间默认安装文件中发生了什么变化。
您需要对Sitecore配置或设置进行的任何更改都应使用补丁文件进行,并且仅将那些自定义文件添加到您的解决方案中。
如何针对部署进行处理?
有一些选择。 您可以执行脚本编写的路由,该过程将进行干净的Sitecore安装,解压缩并进行所需的任何修改,然后一个接一个地安装/解压缩您在解决方案中使用的模块。
另一种选择可能是使用所有模块创建默认安装,然后将其压缩,然后进行安装,其过程与上述类似,但更为简单的情况是仅解压缩单个文件。 您可以使用Sitecore SIM来安装实例,模块,然后进行备份或手动执行。
还有另一种选择是将所有内容检入Source Control,无论是在单独的存储库中还是在不同的项目下,以确保所有默认文件和配置都保持独立。 如果将来需要升级,只需删除存储库/项目,然后重新添加它们即可。
我也将执行相同的操作(一个单独的项目),以使所有支持补丁/ dll保持独立,再次帮助轻松确定已应用了哪些修补程序,并在将来的版本解决了该问题时轻松地将其删除。
这些可能会为您的部署增加一个额外的步骤,但是保持这种分离将使您的升级时间变得更加轻松。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.