2017-06-15 22 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文件被编译。

但我更喜欢你的“全无”方法,这对于其他开发人员而言不那么令人困惑。

相关问题