跨项目共享SCSS目录

时间:2017-03-02 01:07:11

标签: angularjs git version-control npm sass

我正在管理一个项目,我使用Patternlab来管理前端样式和组件,但是也希望在另一个作为实际应用程序的Angular项目上共享其SCSS目录。

两者都是Git repos所以我的第一个想法是使用Git子模块,但作为一个Git新手,我不知道这是否是最好的用例。我还考虑过一个私有的npm模块,但不确定这是否正确。

有没有人有经验在多个项目中共享一个通用的,版本控制的SCSS目录?

1 个答案:

答案 0 :(得分:1)

如果两个项目都可以始终具有相同版本的SCSS目录,则可以使用子模块。但通常我们无法确定。所以子模块不是这种情况的好选择。

最好在一个分支中管理SCSS目录(我们在这里调用SCSS分支),当您的项目需要最新版本的SCSS时,您可以将SCSS分支合并到master分支。

假设您要为projectB共享projectA的SCSS目录,可以使用子树为projectB添加SCSS分支。详细说明如下步骤(即使您不单独管理SCSS也适用):

  1. 对于projectA,创建一个SCSS分支来单独管理/开发SCSS目录(如果您想单独管理SCSS)。
  2. 在projectB中,将projectA的SCSS分支添加为子树:
  3. git subtree add --prefix=SCSS/ <URL for projectA> SCSS

    1. 修改/提交projectB中SCSS文件夹的更改。
    2. 如果您希望更改SCSS也用于projectA,您可以使用:
    3. git subtree push --prefix=SCSS/ <URL for projectA> SCSS

      1. 如果要将SCSS的更改从projectA拉到projectB,可以使用:
      2. git subtree pull --prefix=SCSS/ < URL for projectA> SCSS