gpt4 book ai didi

windows - 为什么 npm 不支持用户/全局 npmignore?

转载 作者:可可西里 更新时间:2023-11-01 13:13:51 26 4
gpt4 key购买 nike

我的编辑器生成工作区文件和备份文件夹,我编写的软件的用户对此不感兴趣。为了避免在每个项目中列出我的编辑器特定的忽略,我试图告诉 npm 在用户或全局级别忽略它们。

不幸的是,我没有运气这样做。在我的项目文件夹中运行 npm pack,即使我先清除 npm 缓存,也会包括工作区文件和两兆的备份文件。 (对于只有 10 KB 代码的项目!)我已经尝试了 ignore 配置设置,一个针对每个用户的 .npmignore,以及全局 npmignore,全部无效。

这是我在 npm config ls -l 中的输出,被截取到相关部分:

; userconfig C:\Users\benblank\.npmrc
ignore = "__history *.epp"

; builtin config undefined
prefix = "C:\\Users\\benblank\\AppData\\Roaming\\npm"

; default values
globalignorefile = "C:\\Users\\benblank\\AppData\\Roaming\\npm\\etc\\npmignore"
userignorefile = "C:\\Users\\benblank\\.npmignore"

C:\Users\benblank\.npmignoreC:\Users\benblank\AppData\Roaming\npm\etc\npmignore 的(相同)内容:

__history
*.epp

我做错了什么?我正在运行 Windows 7、node@0.8.9 和 npm@1.1.61。

最佳答案

npm 有一些主要的 outstanding issuesnpmignore 文件相关。

谢天谢地,还有更好的选择!它是 package.json files属性(property)。

这是我的 delivr 中的示例项目。

"files": [
"lib",
"index.js"
]

为什么更好?

  1. 内部机制使该机制更加可靠。
  2. 这是一个白名单而不是黑名单。通常,假设您使用 lib 文件夹(或类似文件夹),您想要包含的文件/目录比您想要排除的文件/目录少,所以它更简洁。
  3. DRY .如果 .npmignore 文件存在,npm 将不会引用 .gitignore 忽略模式,这通常需要重叠和重复的信息。白名单不存在这个问题。
  4. repo 协议(protocol)中少了一个文件。 package.json 已经是定义您的包的 list ,将此配置放在那里很有意义。

关于windows - 为什么 npm 不支持用户/全局 npmignore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12534699/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com