2017-06-15 60 views
0

我正在創建一個Create-React-App項目,該項目出衆地不支持css transpilers,比如SASS和Less。正如討論的herehere所述,通用解決方案是編譯源代碼.less/.scss並將構建產品.css導入到組件中。然後,您可以從源代碼管理中刪除所有.css文件,並僅跟蹤.less/.scss。是否有可能.gitignore只有某些.css文件是構建相鄰.less/.scss文件的產品?

這是一個很好的解決方案,但只有少數我的組件真的需要較少的清晰度/可擴展性;大多數情況下,純CSS是很好的。所以,我想要做的就是在任何地方使用.css,除了一些無處不在的散佈在這裏和那裏。我可以用Less編譯器來配置它,但是對於源代碼控制,我只想觀看「源」css文件,並忽略「生成」css文件(從Less生成)。正因爲如此,我無法覆蓋.gitignore所有.css,因爲有些是真正的源文件。

那麼,是否有這樣的glob模式?可能:

*.css where *.less 

我看其他兩個可能的解決方案:

  1. 開關一切.LESS,即使它沒有必要,並繼續忽略所有*的.css
  2. 只選擇性的.gitignore構建產品的.css。

我喜歡選項2,但它似乎有點容易出錯和更多的維護。

+0

您可以創建一個簡單的文件讀取器,查找無文件,並在替換src/*之後將它們追加到.gitignore中,以便構建/ * .css。並運行此任務,以便找到任何新的.less文件,這些文件也將添加到.gitignore文件中 – karthick

回答

0

將所有東西都切換到較少是轉換器的選擇:只有一個爲什麼做CSS。瞭解項目如何爲同事工作也是最容易的。

您還應該爲生成的和未生成的css文件保留不同的css文件夾。然後,您可以忽略生成的文件夾。

0

你可以得到在src文件夾2個文件夾爲例srcdist

簡而言之源.css和.LESS文件和編譯該文件夾時,該.css文件複製到dist之一,而.LESS文件被編譯。

但我更喜歡你的「全無」方法,這對於其他開發人員而言不那麼令人困惑。

相關問題