带有NPM和git的角包装:存储库中的DIST文件夹



我想实现的目标:

我已经创建了一个角模块,我想从我的git repo中 npm install(我不想使用 npm publish,因为它是私人代码(。

我正在使用 ng-packagr(https://github.com/dherges/ng-packagr(获取角包装格式。这将为新创建的软件包创建一个dist文件夹。

这就是我使用git安装mypackage的方式:

npm install https://SOMETHING/SOMETHING.git#v0.1.0

我的问题是:

我的问题是我已经尝试了这两件事,但是它们俩都丑陋或不好,我认为:

  1. 我将所有内容推到了我的git repo(我从 .gitignore中删除了 dist(,但是在 npm installnpm start之后,我得到一个模块找不到错误。我认为这甚至不起作用,因为软件包位于子文件夹dist中(我从node_modules/mypackage/dist导入我的模块(。另一个问题是,当我安装软件包时,我的源文件也在那里,这不是最好的。

  2. 我仅将dist文件夹推向GIT存储库。然后,我可以轻松地将其安装在另一个项目中,并且没有错误。但是我的问题是我也应该在其他地方推动代码。有了这个,我必须有2个git存储库。一个用于我的实际代码,一个用于软件包(dist文件夹(。

我知道必须有一些更好的解决方案。我读了很多文章,但我什么也没发现。

谁能为此建议一个好的解决方案?还是我应该选择第二个?

我担心,如果您真的想从git存储库中安装它,则必须有2个存储库。我最近不得不迁移一个类似的项目,我们使用了私有NPM注册表。这个想法是将自己的软件包托管到您的私有NPM注册表中,以便只有具有正确凭据的用户才能安装您的软件包。我们使用了Azure工件,因为用户已经在使用Azure,但是Afaik具有一些免费的层,并且非常容易设置。

您可以在NPM注册表上以不同的范围推动它。

最新更新