gpt4 book ai didi

javascript - AJAX 构建和部署环境,尤其是 javascript 和 css min,完整版本

转载 作者:塔克拉玛干 更新时间:2023-11-02 21:46:57 24 4
gpt4 key购买 nike

目前我有一台 QA 服务器可以运行,可以在那里运行 svn update 来测试每个人提交给 subversion 的代码。我在越来越多的 javascript 和 css 中看到的问题是编译的最小或完整版本,例如:

  • 构建工具:Jake
  • JS压缩器:UglifyJS
  • CSS 优化器:CSSO

要么必须在升级到生产服务器之前手动更新/编译,要么我们的 svn 上只有最小/完整版本,但这不是很好。我看到一种方法的方式是:* 将完整/拆分的 css java 脚本文件保留在网络服务内容所在的路径之外,颠覆或 trac 在提交/触发时构建最小/完整版本。

有人进一步自动化了这个过程吗?你如何分离你的完整源代码/完整版本/最小版本,以免搞乱最终部署?你什么时候编译最小版本?仅在投入生产前的最后一步?您将原始来源放在哪里,它不能紧挨着网络服务的其他文件,在我的示例 php 文件中?

最佳答案

我自己也在处理类似的事情。如果我正确理解您的问题,您希望在本地或开发环境中拥有未缩小的文件,但在部署时将它们缩小。当然,您可以通过许多不同的方式来解决这个问题,我们目前正在研究更好的解决方案,但我会给您举一个我刚刚完成的元素的示例...

使用 symfony 1.4、YUI Compressor 和 git。

我有一个 symfony 任务(php cli 脚本)设置为在给定的 css 和 js 文件列表上运行 YUI Compressor,这些文件被转储到适当目录中的 min.css 和 min.js 中。该脚本只是将列出的文件的所有内容转储到一个大文件中并缩小它们。然后将 symfony 设置为仅使用 min.js。当然,调试缩小的文件可能会很痛苦,所以另一种选择是跳过在本地或开发机器上进行缩小,将它们作为一个组合文件保存。就我个人而言,无论如何我都会缩小它,因为 Chrome 的“Pretty print”选项在大多数情况下对我来说已经足够好了,尽管它不是“理想的”。

我已经为 git 创建了一个本地提交后和服务器端合并后脚本,它只运行 symfony 任务,所以只要你在本地提交或在服务器上执行 git pull,文件就会自动更新,所以所做的任何更改提交时会更新 js/css 文件内部。唯一的痛点是每当您在本地更新但尚未提交时必须手动运行 minify 脚本。

在 local/dev 上保留未压缩代码的替代方法需要更多编码,以便它是特定于环境的,这当然是可行的,但到目前为止我一直很懒惰,因为它现在工作得很好 :)

关于javascript - AJAX 构建和部署环境,尤其是 javascript 和 css min,完整版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7669667/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com