2013-03-19 63 views
0

在Linux上編譯服務器端的SASS/Compass文件有哪些選擇(如果有的話)?編譯SASS/Compass服務器端

我們擁有Git上的整個代碼庫。我們使用Compass/SASS進行所有CSS工作,並且我沒有理由跟蹤編譯的文件。我們因編譯的CSS拋出合併錯誤而感到頭疼,因爲它全部在一行上。

編譯Compass/SASS服務器端是否可行?

+0

你在使用部署(不 尚未測試過)?這是[Capistrano]的解決方案(http://www.metaltoad.com/blog/integrating-compass-git-capistrano-deployment-workflow),我也使用過git post-receive hooks:http:// stevegrunwell.com/blog/recompile-sass-upon-deployment-using-git-hooks – bookcasey 2013-03-19 23:01:37

+0

[這裏寫的很棒](http://jeffcroft.com/blog/2012/feb/23/many-ways-to -use-css-preprocessors /)概述了SASS/Less編譯方法,以及每種方法的優點/缺點。 – Wilhelm 2014-06-03 05:42:44

回答

1

我們的部署腳本將SASS文件編譯爲CSS,然後部署到生產服務器(當然不是跟蹤編譯後的文件在Git中,因爲這會導致廢話)......

不知道什麼棧你我們正在使用部署,但最好是編譯,然後部署,而不是讓每個頁面請求嘗試編譯這些文件。

0

我想我不同意這一點。我也有同樣的問題。我想要寫sass的功能,但不想在本地主機上(自動)編譯它。除此之外,sass有一個缺點:變量不是變量,而是常量。

這是我的解決方法:

我有一個style.php

  • 可以包括 '真正的' 變量(極端的方便,當你有 主題很多的)
  • 輸出CSS

而且在頭部使用:

<style><?echo style.php; ?></style> 

這種帶有兩個缺點:

  1. 就像前面提到的nzifnab:它編譯每次當 訪問者訪問頁面的時間。
  2. 您沒有可用的所有sass功能。

但是這是全部可以解決的。

  1. 可以通過緩存來解決。
  2. 可以http://leafo.net/scssphp/可以解決我猜