【问题标题】:How can I configure npm to use Windows-style line endings in package.json?如何配置 npm 以在 package.json 中使用 Windows 样式的行尾?
【发布时间】:2018-08-02 21:00:28
【问题描述】:

我运行 Windows,当 npm 修改我的 package.json 文件时,它使用 Unix 样式的行尾 (LF) 写入它。我希望它使用 Windows 样式的行尾 (CRLF)。

是否有一个全局配置设置,甚至是一个命令行选项让 npm 使用正确的 EOL 字符?

【问题讨论】:

  • 我认为 NPM 配置或 cli 选项不能更改行尾。但如果你同时使用 git,我建议通过git config core.autocrlf true 开启自动转换。然后当你运行git add 时,行尾会自动转换,不会导致额外的提交。

标签: npm line-endings


【解决方案1】:

更新:更简单的解决方法是使用npm@5.8.0 或更新版本。

假设 Git,这个问题最简单的“解决方案”是使用 .gitattributes 文件来指定 package.json(现在是 package-lock.json)应该始终使用 LF:

# .gitattributes in project root
package.json text eol=lf
package-lock.json text eol=lf

【讨论】:

  • 太棒了。请注意,您还可以使用通配符:package*.json text eol=lf
  • 我曾讨论过使用通配符...但是如果项目包含以package 开头并以.json 结尾的其他文件怎么办?! (过早的优化很有趣。)
猜你喜欢
  • 2021-11-12
  • 1970-01-01
  • 2016-07-03
  • 2018-11-14
  • 1970-01-01
  • 2020-08-25
  • 2011-09-11
  • 2018-10-17
相关资源
最近更新 更多