有没有办法在Git的不同分支上拥有不同的JavaScript库版本?

有没有办法在Git的不同分支上拥有不同的JavaScript库版本?,javascript,node.js,git,express,Javascript,Node.js,Git,Express,我正在尝试升级当前使用版本3中的库的repo。我希望能够创建一个分支(BranchB),专门用于将这个库更新到版本4。因此,我尝试将BranchB上的package.json更改为使用v4,并进行了npm安装,以便在这个新分支上获得正确的版本 我进行了测试,结果失败了。太好了 现在,当我切换回master时,我更希望使用的库版本设置回v3。是否有一个Git工作流来实现这一点?或者每次我希望相应的分支具有正确的对应库版本时,我都必须安装npm。一个可能的策略,尽管有点笨拙,是将repo克隆两次到不

我正在尝试升级当前使用版本3中的库的repo。我希望能够创建一个分支(BranchB),专门用于将这个库更新到版本4。因此,我尝试将BranchB上的package.json更改为使用v4,并进行了
npm安装
,以便在这个新分支上获得正确的版本


我进行了测试,结果失败了。太好了


现在,当我切换回master时,我更希望使用的库版本设置回v3。是否有一个Git工作流来实现这一点?或者每次我希望相应的分支具有正确的对应库版本时,我都必须安装
npm

一个可能的策略,尽管有点笨拙,是将repo克隆两次到不同的文件夹-一个使用旧库,一个使用新库。然后假装你有分裂的个性,并作为两个不同的程序员编辑项目:)


正如我所说,它很笨重,但总比不断安装库要好。

“我运行测试,但它们失败了”。。。你说的是单元测试(业力,等等)?项目失败的具体原因是什么?您正在使用的任何库的v4是否与您的代码向后兼容?此外,除非您将节点模块本身放入git repo(通常不建议这样做),否则我不认为您可以避免每次重新安装包。除非您分别远程链接到不同版本的库,否则请将分支与依赖项分离(很像在项目中使用远程CDN来使用特定版本的jQuery)。我正在尝试将Express从版本3升级到版本4。他们改变的事情之一是app.locals不再是一个函数,而是一个对象。这会导致我所有的单元测试失败。事后看来,我问题中的那句话是没有必要的。我想表明,在一个分支上,我有v4,它工作正常。现在我想确保我的主分支保持干净——因此需要v3。