我正在管理一个项目,我使用Patternlab来管理前端样式和组件,但是也希望在另一个作为实际应用程序的Angular项目上共享其SCSS目录。
两者都是Git repos所以我的第一个想法是使用Git子模块,但作为一个Git新手,我不知道这是否是最好的用例。我还考虑过一个私有的npm模块,但不确定这是否正确。
有没有人有经验在多个项目中共享一个通用的,版本控制的SCSS目录?
答案 0 :(得分:1)
如果两个项目都可以始终具有相同版本的SCSS目录,则可以使用子模块。但通常我们无法确定。所以子模块不是这种情况的好选择。
最好在一个分支中管理SCSS目录(我们在这里调用SCSS
分支),当您的项目需要最新版本的SCSS时,您可以将SCSS
分支合并到master
分支。
假设您要为projectB共享projectA的SCSS目录,可以使用子树为projectB添加SCSS
分支。详细说明如下步骤(即使您不单独管理SCSS也适用):
SCSS
分支添加为子树: git subtree add --prefix=SCSS/ <URL for projectA> SCSS
git subtree push --prefix=SCSS/ <URL for projectA> SCSS
git subtree pull --prefix=SCSS/ < URL for projectA> SCSS