2013-02-12 22 views
1

在重命名或刪除文件後執行compass compile時,編譯的文件實際上不會被刪除。 compass clean實際上並沒有刪除這些文件,因爲它只是擔心清理當前正在使用的文件。這就是說,我不想做一些像rm -rf /css/*這樣的css是我編譯的文件夾,因爲這會完全吹走我所有的文件。在指南針中刪除未使用的生成的css文件

我想知道是否有辦法刪除「舊」編譯的文件,而不用觸摸當前正在使用的任何東西。

爲什麼?如果您有很多scss文件,生成的文件或精靈表可能需要一些時間才能生成。這並不是太糟糕,但是如果你正在使用生成的文件並創建其他一些衍生物(可能是因爲你有一些較舊的構建過程或正在生成文檔或其他東西),那麼你需要再次完全重新生成它。吹走所有文件將強制完全重新生成;而只刪除不需要的文件然後重新編譯是非常快的。

我們的想法玩弄,只有偶爾吹走所有文件通過執行以下操作:

compass clean 
rm -rf css/* 
compass compile 

但是我們希望有更好的解決辦法:)。

+0

你是什麼意思,如果你輸入'指南針';那麼你有所有的文件,你可以像這樣@import'compass/css3'單獨導入它們;或者你的意思是你創建的文件? – iConnor 2013-02-12 18:31:22

+0

@ConnorMiles我的意思是,而不是刪除所有生成的CSS文件,我只想刪除那些未使用的。 (修正問題) – Parris 2013-02-12 23:13:13

+0

我將不得不質疑爲什麼你有這麼多編譯文件的任何給定的項目,你真的需要*這個。 – cimmanon 2013-02-13 01:32:15

回答

0

一個shell腳本,刪除CSS文件並生成新的應該是這樣的:

#!/bin/sh 
compass clean 
compass compile 

注意這個特殊的腳本需要在同一目錄中的項目工作。我的腳本功能非常弱,但我確信它可以在任何地方進行修改,而無需將其複製/粘貼到每個項目中。

+0

但是,這不會刪除我生成的所有css文件並完全重新編譯它們嗎? – Parris 2013-02-12 23:11:37

+0

這是用Compass做的唯一方法。 – cimmanon 2013-02-13 01:29:15