javascript - 如何控制所有开发者使用相同的库版本?

标签 javascript angular git github npm

我们使用 GitHub 作为代码存储库,通过 Visual Studio Code 在 Angular 中进行开发。这工作正常,但最近我们遇到了一个问题,因为其中一位开发人员拥有某个库的不同版本。由于使用 npm 安装不需要指定版本(它会安装最新版本),因此他最终得到了与其他开发人员不同的版本。

解决该问题的一种方法是将所有库放在 GitHub 中,但这似乎令人难以承受。让所有开发人员使用相同版本的 javascript 库的最佳实践是什么?

最佳答案

确保package.json指定依赖项的版本并提交此文件

{
  "dependencies": {
    "foo": "1.2.3"  exact version
    "bar": ">1.2.3" greater than 1.2.3
    "baz": "^1.2.3" compatible with 1.2.3, ie from 1.2.3 until below 2.0.0
  }
}

More details on semantic versionning

package.json 定义了可以安装的版本范围,但 package-lock.json 定义了所有软件包的确切版本( all = 包括依赖项的依赖项)已安装。您必须提交此文件。

此外,更喜欢使用 npm clean-install 而不是 npm install,因为如果节点模块文件夹中安装的包与中定义的包不匹配,它会抛出错误包锁。

关于javascript - 如何控制所有开发者使用相同的库版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59779945/

相关文章:

javascript - 使用最新的 UglifyJsPlugin for Webpack 编译的应用程序显示 "webpackJsonp is not defined"

angular - 错误 : Unexpected value 'undefined' exported by the module 'DynamicFormModule'

javascript - Spring Boot不支持“删除”

git - 删除包含 merge 的 git 历史记录中的特定提交

git - 如何在不跟踪远程分支的情况下压缩提交?

javascript - 为什么拼接方法有这种奇怪的行为?

javascript - 替换字符串索引处的字符

ruby-on-rails - Rails 迁移顺序和 Git

Javascript - 通过 Action 获取表单

javascript - Angular : No Error but not showing data in View