6

我对 git 有点陌生。此外,这是我的第一个项目,我正在自动化部署过程。到目前为止,能够git push dev上传文件、复制配置文件等已经很幸福了。

现在我想在推送到我的开发服务器时缩小 JS/CSS 文件。我正在考虑在服务器上安装一些命令行工具,用于在接收后的 git 挂钩上压缩和保存某个文件夹上的每个 js/css 文件、压缩和保存。

这是一个好方法吗?(因为我读过关于将压缩文件添加到 repo 和其他我不太相信的想法)

如果是这样,哪些工具最适合这项任务?

4

3 回答 3

2

http://git-scm.com/book/ch7-2.html

我假设您永远不会在服务器上进行提交,即服务器将仅用于检出更新的主服务器并且永远不会更新它。这个技巧将在结帐时自动缩小任何 *.css 文件:

# within repo
$ echo '*.css filter=minify' >> .git/info/attributes
$ git config filter.minify.clean  cat
$ git config filter.minify.smudge minify-command

minify-command 应该是缩小 *.css 文件的命令,即

$ cat foo.css | minify-command > foo-minified.css

它接近你想要的吗?

于 2012-12-04T15:47:04.150 回答
0

也许您正在寻找添加结帐后挂钩(或者根据您的部署系统,它可能是另一个挂钩),然后使用将缩小文件的脚本启动。

您还可以在执行此操作之前使用钩子检查相关文件的修改日期

于 2012-12-05T17:31:32.630 回答
0

通过在 dev 上重写文件并且在本地存储库中没有缩小文件,这两个存储库将始终彼此不同步。

您可能想要重新考虑将站点部署到 dev 的方式,而不是推送到 dev,例如,您可能希望从 prestine 存储库中提取 dev。

于 2012-12-04T03:25:10.337 回答