我想在我的不同服务中安装通用git repo作为依赖项。对于每个服务上的不同分支,我想在package.json中包括相应的common-utility分支作为依赖项
我知道我可以通过执行以下操作来安装git模块
: npm i git+ssh://git@<gitlab_url>.git
或
npm i git+ssh://git@<gitlab_url>.git#master
用于特定分支。
但是使用这种方法,我只能在每个服务的所有分支中使用实用程序的特定分支。
因为当我合并两个分支时,package.json也会更新,最后每个分支都具有与依赖项相同的实用程序分支。
假设我有一个使用Utility作为npm模块的服务,并且服务具有2个分支master
和staging
当前方案
utility#master -> ServiceA#master
utility#master -> ServiceA#staging
我真正想要的
utility#master -> ServiceA#master
utility#staging -> ServiceA#staging
有没有解决方法,我可以保持对应的分支作为依存关系,甚至在合并两个分支之后,它也遵循类似的模式。
答案 0 :(得分:0)
我认为没有一种正确的方法来实现您所说的内容,因为听起来有点奇怪,您可能会在2个不同的分支上的同一位置放置2个不同的文本。
但是我想我可以为您的问题提供2种解决方案,但是我想清楚地告诉您,我认为这两种方法都不是一种好的方法。 1.一种方法是分别拥有两个分支,而不是合并两个分支,而是在进行更改后合并更改分支或在两个分支上开发分支。 2.我猜您可能需要在仓库中有一个单独的小项目,该文件检查环境文件的env文件,并使用所需的任何依赖版本重写项目的package.json并运行安装脚本。
github发生了类似的讨论,但不幸的是没有解决办法。