【问题标题】:Django-compressor, git and productionDjango 压缩器、git 和生产
【发布时间】:2012-11-15 07:24:32
【问题描述】:

我使用 amazon s3 存储静态文件,使用 django-compressor 压缩 js 和 css 文件,COMPRESS_OFFLINE = True

为了部署到我的生产服务器,我首先运行 python manage.py compress,它将压缩文件上传到 Amazon s3,然后执行 git push 到我的 repo。在生产服务器上,我从这个 repo 中提取,我总是遇到生成的 css 和 js 文件之间的同步问题。

我搜索可能性并注意到压缩器实际上查看压缩文件的修改时间。当我检查我的应用程序的静态文件夹(不是 S3 文件)中的静态文件之间的修改日期时,我注意到它们是不同的,我相信原因是 git 更改了已更改文件的修改日期。

我该如何解决这个问题?

谢谢

【问题讨论】:

  • 你在 git 中跟踪压缩文件吗?
  • @jdi 我在 git 上跟踪未压缩的。压缩文件上传到我的亚马逊 S3 存储桶。服务器和本地机器检查修改时间,同时匹配自上次压缩以来是否有任何文件被更改,这就是我失败的地方。
  • 你能扩展一下吗?您将 js 和 css 文件压缩并上传到 S3 存储桶。然后提交并推送未压缩的文件;这些文件是由manage.py compress 修改的(js 和 css 链接在 *.html 模板中更新以引用亚马逊服务器)还是推送原始文件?另一个问题:您是否也在生产服务器上压缩和发送相同的文件?你期待什么结果?不幸的是,目前还不清楚。
  • 我认为这个问题可能是相关的:stackoverflow.com/questions/1964470/… 您可以查看第二个答案(不是已接受的答案)。可能会有所帮助。
  • 您最后一次提交是在压缩并上传到 S3 之前还是之后?我的猜测是你提交,运行压缩,此时文件被 django-compressor“修改”。在最终提交/合并之前尝试压缩。

标签: git django-compressor


【解决方案1】:

检查您的服务器 Git 存储库(您正在拉取的)是否没有

  • 任何.gitattributescontent filter driver(会自动修改这些文件的内容),
  • 任何本地或全局设置,例如 core.autocrlf,会修改 eol(行尾)样式。

【讨论】:

    猜你喜欢
    • 2013-07-27
    • 2017-01-02
    • 2020-09-12
    • 2019-11-15
    • 2019-01-03
    • 1970-01-01
    • 2018-01-04
    • 2014-06-30
    • 1970-01-01
    相关资源
    最近更新 更多