[英]Releasing javascript library… how should I handle the external dependencies?
[英]Releasing a Javascript library for client use
我有一个我为客户编写的Javascript库。 这是使用webpack在typescript中编写的,并且“编译”到javascript中。 我想让客户端访问分发文件,但不是整个源。 理想情况下,他们可以从命令行安装以简化安装更新。
该库提供了一些javascript函数。 客户端会将脚本安装在其服务器上的一个位置。 然后,他们可以根据需要在他们的网络调查中包含javascripts。
+project
+dist
-main.js
-vendor.js
-index.html
-README.md
-LICENSE.md
+src
-index.js
-index.html
...
我最初的想法是让他们访问仅包含分发文件的私有git存储库。 所以我的项目将是一个git存储库,只有我可以访问这个repo。 然后我会将dist
目录的内容复制到release
目录。 release
目录将是我可以提供给客户端的另一个git repo。
我不确定这是最好的方法。
有人建议GitHub发布可能是一个选项 - 但我不使用GitHub,我使用GitLab并希望继续这样做。
npm
也不是一个好选择。 它将文件安装到node_modules
目录中并创建package.json
文件。 这对我的客户来说会让人感到困惑并且不是“干净”。
这听起来像是第二个git存储库,因为子模块可以为你工作。 在你这边它会收到构建的文件,在客户端它们可以使用它们。
我建议使用标签来指示子模块中的重要版本
通过使用单独的存储库,不存在泄漏原始文件的风险。
或者,您可以将文件打包为zip文件,然后将其作为ci进程的一部分上传到S3,并编写脚本以便客户端可以自动下载分发文件 - 但这似乎比使用类似于包管理器更复杂NPM。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.