首页 > 解决方案 > 发布 Javascript 库供客户使用

问题描述

我有一个为客户编写的 Javascript 库。这是使用 webpack 用 typescript 编写的,并“编译”成 javascript。我想让客户端访问分发文件而不是整个源。理想情况下,他们可以从命令行安装以简化安装更新。

该库提供了一些 javascript 函数。客户端会将脚本安装在其服务器上的一个位置。然后,他们可以根据需要将 javascript 包含在他们的网络调查中。

+project
  +dist
     -main.js
     -vendor.js
     -index.html
     -README.md
     -LICENSE.md
  +src
     -index.js
     -index.html
     ...

我最初的想法是让他们访问仅包含分发文件的私有 git 存储库。所以我的项目将是一个 git 存储库,只有我可以访问这个存储库。然后我会将目录的内容复制dist到一个release目录中。该release目录将是我可以提供给客户的另一个 git repo。

我不确定这是最好的方法。

有人建议 GitHub 发布可能是一种选择——但我不使用 GitHub,我使用 GitLab 并希望继续这样做。

npm似乎也不是一个好的选择。它将文件安装到node_modules目录中并创建一个package.json文件。这会让我的客户感到困惑并且不是“干净的”。

标签: javascriptreleaserelease-management

解决方案


听起来像第二个 git 存储库,因为子模块可以为您工作。在您这边,它将接收构建的文件,而在客户端,他们可以使用它们。

我建议使用标签来指示子模块中的重要版本

通过使用单独的存储库,没有泄漏原始文件的风险。

或者,您可以将文件打包为 zip,然后在 ci 进程中上传 S3 之类的地方,然后编写一个脚本,让客户端可以自动下载分发文件 - 但这似乎比仅使用包管理器更复杂npm。


推荐阅读