如何处理Monorepo中CSS的中断?

时间:2020-09-28 11:49:19

标签: javascript lerna monorepo

我有monorepo,有两个团队签出该repo并处理其中的应用程序。

  • foo团队致力于app1
  • 律师团队在app2上工作。

我的项目结构如下:

  apps
   app1
   app2
  packages
   pkg1
   pkg2
   pkg3
  lerna.json

项目之间的关系是:

 app1 -> pkg2, pkg3
 app2 -> pkg3

pkg3在两个应用程序(app1,app2)之间共享。并且在pkg3中有一个按钮。

foo团队将css类添加到按钮background:blue中,并进行了提交和推送。

第二天,

酒吧团队从管理员那里获取了最新版本,他们认为蓝色不利于他们,所以他们改为红色。 (background:red)。之后,他们会提交并推送。

foo团队采用了最新版本,他们看到按钮的颜色已更改。 (在最坏的情况下,他们要等到很晚才看到它。)

我的问题是如何预防或处理这种情况?我没有东西测试会得到答案,因为它的CSS。那么该如何解决?

PS 我当时在考虑不要在按钮的内部而是在外部设置样式,但是从长远来看,它不会粘住并且有人会忘记。

1 个答案:

答案 0 :(得分:0)

如果您要拥有一个包含设计元素的共享模块,那么开发人员就需要像 shared 模块那样对其进行处理。

>

没有人应该对其进行重大更改,尤其是在像“按钮”这样的通用元素上。

每个人都应该在一个共享的design language上工作,并且应该在团队之间达成一致(或者从组织的更高级别移交下来)。