Node.js package.json是否需要位于存储库的根目录?

mur*_*d99 5 javascript git github node.js package.json

我有一个Node.js包,当前位于GitHub存储库的子目录中。我目前可以在不设置存储库字段的情况下发布它,但是随后我的用户将收到警告,并且“节点软件包存储库”页面上的有用信息比他们可能要少(缺少问题和提取请求链接)。

如果我将repository字段设置package.json为指向父存储库,那行得通吗?是否会因为package.json文件不在该存储库的根目录(尤其是npm)而损坏?

Pet*_*ons 4

如果我将 package.json 中的存储库字段设置为指向父存储库,这会起作用吗?

是的。任何关键的 npm 功能都不会使用此字段。如果贡献者想要克隆一个存储库以便他们可以处理该项目,情况就是如此。

是否会因为 package.json 文件不在该存储库的根目录(特别是 npm)而导致任何问题?

不,我不相信任何东西都会损坏。

  • 您应该将该repository字段设置为父项目的顶级.git路径。该字段的目的是让 SCM(git 等)能够克隆项目。就您而言,最接近的是父项目。这应该可以避免出现警告消息。
  • 您应该将该bugs字段设置为问题页面。然后,这应该会显示在 npm 网站上。我不认为repositorybugs是直接相关的,或者任何假设都是由 npm 基于另一个做出的。
  • 如果您没有相应的网站,则可以将homepagegithub URL 设置为父存储库中包含此 npm 模块的目录。将 README.md 文件粘贴在那里,github 会将其呈现在目录内容下方。