将 CSS 部署与站点的其余部分分开

Posted

技术标签:

【中文标题】将 CSS 部署与站点的其余部分分开【英文标题】:Separating CSS deployment from rest of site 【发布时间】:2010-09-08 08:25:20 【问题描述】:

在我工作的地方,设计和开发部门是完全分开的,但是我们(设计部门)负责管理我们网站的 CSS。通常,新的 CSS 需要比新的网站代码更频繁地发布到生产服务器。因此,我们单独部署 CSS,它位于源代码控制之外。

但是,最近,我们遇到了一些新 CSS 无法与更新的网站版本同步的问题,总的来说,这个过程非常令人头疼。我一直在推动将 CSS 置于某种源代码控制之下,但很难找到一种让每个人都满意的好的部署方法。我们最大的问题是管理影响网站当前部分的更改,其中 CSS 更改需要在网站更改之前生效,但不会破坏现有网站上的任何内容。

我不会在这里详细介绍设计师和开发人员之间奇怪的文化,但我想知道其他人在管理需要的大量 CSS(50 多个文件,成千上万行)方面有什么经验不断更新和发布,独立于网站发布。

【问题讨论】:

【参考方案1】:

我将在这里提倡使用源代码管理。特别是如果开发团队使用分支来处理结构化发布。这样,无论 CSS 签入到生产分支中,都应该部署什么……如果它在中途更新,则由更新它的人(设计师?)负责使用贵公司的任何系统来推广该代码用于促进生产变化。

【讨论】:

我将此标记为已回答,因为源代码管理最终成为了我们的解决方案。谢谢。【参考方案2】:

花哨的名字是“内容交付网络”(Wikipedia)。

我们将 CSS 文件存储在数据库中,然后创建一个单独的网站,该网站只提供 CSS 资源。我们于 2007 年 5 月在 30 多个国家/地区的 1000 多个网站上实施了此功能。在过去的 15 个月里,它运行良好。

静态图像甚至 javascript 文件都以相同的方式处理。

【讨论】:

以上是关于将 CSS 部署与站点的其余部分分开的主要内容,如果未能解决你的问题,请参考以下文章

将路线与布局的其余部分分开 - 做出反应

如何使用 Parcel 将资产与应用程序的其余部分分开构建

网站服务架构

使用边距/填充将 <span> 与 <p> 的其余部分隔开

如何在本地部署包含 css、js 和背景图像的 jekyll 站点?

宝塔一键部署的域名写啥