您应该在 NODE 项目中将 .nvmrc 提交到 GIT 吗?

Mar*_*oss 5 git gitignore node.js nvm

作为一名开发人员,我希望拥有多个可以使用不同版本的 NODE js 的项目。此外,当我从 GIT 存储库签出新项目时,我理想情况下希望只运行一个命令,所有事情都会自动化。

鉴于该文件.nvmrc允许自动切换每个目录的 NODE 版本。鉴于我的项目是建立在特定版本的 NODE 之上的,可能无法在任何其他版本中工作。

我应该将其提交给 GIT 吗?

这可能是基于意见的问题,但我实际上是在问这样做的缺点。 有什么风险吗?

--

背景:

这是我开始在新公司工作后的第一次承诺。我的前同事拒绝了该 PR(没有之前的辩论),当我询问时,他告诉我使用正确版本是开发人员的责任。

好吧,我还是添加.nvmrc.gitignore使用了它。nvm use xx否则,每次在终端中打开新窗口时,我都需要输入内容。

mne*_*rov 3

指定运行项目的工具版本(或者就此而言,此处详细讨论的任何项目特定文件本身并没有什么坏处,因为:

  • 很清楚您的目标是什么,允许您在特定版本中使用这些功能。
  • 方便项目设置。
  • 不想使用它的人可以忽略(在某些情况下)。
  • 不强制任何人使用它(如 for .nvmrc)。

很多人和很多node项目都提交了他们的.nvmrc文件。

我猜你同事的意思是以下之一(只是猜测):

  • 作为程序员,您维护项目及其版本,而不是相反。
  • 该项目“不应该知道”您正在使用的节点版本。
  • 将项目的开发“锁定”到一个版本,或者不允许其在未来更改和发展版本。

  • 这些要点很明确,但作为答复: 1. 其他协作的程序员也需要了解并帮助维护版本,2. 该项目包含依赖于节点版本的包依赖项,3. 锁定又名版本固定有利于可重复部署 - 您会从 package.json 中删除版本吗?版本固定不会阻止未来的更改或发展,但这可能会引入包兼容性问题或破坏性更改,因此应以受控方式完成和测试 (2认同)