2012-11-15 64 views
2

我使用亞馬遜s3存儲靜態文件和django壓縮器壓縮與COMPRESS_OFFLINE = True js和css文件。Django壓縮器,混帳和生產

要部署到我的生產服務器,我首先運行python manage.py compress,它將壓縮文件上傳到Amazon s3,然後執行git push to the repo。在生產服務器上,我從這個回購中拉出來,並且總是遇到生成的css和js文件之間的同步問題。

我搜索的可能性,並注意到壓縮機實際上看着壓縮文件的修改時間。當我檢查我的應用程序(不是S3文件)的靜態文件夾中的靜態文件之間的修改日期時,我注意到它們不同,我相信原因是git會更改修改後的文件的修改日期。

我該如何解決這個問題?

感謝

+0

你在跟蹤git中的壓縮文件嗎? – jdi

+0

@jdi我跟蹤git上的未壓縮的。壓縮文件上傳到我的亞馬遜S3存儲桶。服務器和本地計算機在匹配時檢查修改的時間,如果自上次壓縮以來任何文件發生了更改,那就是我失敗的原因。 – Hellnar

+0

你可以擴展一下嗎?您將js和css文件壓縮並上傳到S3存儲桶。然後你提交併推送未壓縮的文件;這些文件是通過'manage.py compress'修改的(js&css鏈接在* .html模板中更新以引用amazon服務器)還是推送原始文件?另一個問題:你是否在生產服務器上壓縮併發送相同的文件?你期望什麼結果?不幸的是,目前尚不清楚。 – vadishev

回答

1

檢查你的服務器的Git回購(要被拔)沒有

  • 任何.gitattributescontent filter driver(這將自動修改這些文件的內容),
  • 任何本地或全局設置,如core.autocrlf,這將修改eol(行尾)樣式。