gpt4 book ai didi

javascript - 跨多个代码库共享 karma、eslint 等文件

转载 作者:搜寻专家 更新时间:2023-10-31 23:40:46 24 4
gpt4 key购买 nike

我有几个存储库共享很多相同类型的配置文件(例如 .eslintrc.babelrckarma.conf.js) 以及其他类型的实用程序文件。我希望能够将它们提取出来并能够在所有 repo 协议(protocol)中利用它们。实现这一目标的最佳方法有哪些?

  1. 创建一个新的 repo 并将其发布为 npm 模块。然后,导入它并根据需要使用它?
  2. 创建一个基本上可以生成所需文件的 CLI 工具?
  3. 符号链接(symbolic link)?
  4. 其他?

我觉得选项 1 比较理想,但是,我不确定如何才能引用未导出的文件。例如,一个 repo 如何使用此 npm 模块中的 .eslintrc 文件?

最佳答案

当您需要在 CI 服务器上运行构建和测试时,符号链接(symbolic link)将无法正常工作,但可能值得一试 lerna它将多个包包装在一个 monorepo 中。

我已经尝试过 CLI 方法,但最终还是使用了私有(private) npm“微型”模块,我只是根据需要将其放入 package.json 中。

CLI 出了什么问题:

  • 它引入了一个全局依赖项,每个团队成员都必须在他们的机器上安装该依赖项
  • 您需要建立一些机制让 CLI 自行更新
  • 它为您的项目添加了一个抽象层

要在 npm 模块中使用特定的 .eslintrc,您可以将 --config arg 与您的 .eslintrc 路径传递给 eslint .

请记住,这些工具(eslint、babel、karma、mocha 等)有时很难配置和更新,因此最好保持代码库独立,并复制配置文件而不是具有抽象层。

关于javascript - 跨多个代码库共享 karma、eslint 等文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42940193/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com