【问题标题】:Does a Node.js package.json need to be at the root of the repository?Node.js package.json 是否需要位于存储库的根目录?
【发布时间】:2015-04-29 10:48:49
【问题描述】:
我有一个 Node.js 包,它当前位于 GitHub 存储库的子目录中。我目前可以在不设置存储库字段的情况下发布它,但是我的用户会收到警告,并且节点包存储库页面上的有用信息比他们可能的要少(缺少问题和拉取请求链接)。
如果我将package.json 中的repository 字段设置为指向父存储库,这会起作用吗?是否会因为 package.json 文件不在该存储库的根目录(尤其是 npm)而导致任何问题?
【问题讨论】:
标签:
javascript
node.js
git
github
package.json
【解决方案1】:
如果我将 package.json 中的存储库字段设置为指向父存储库,这会起作用吗?
是的。任何关键的 npm 功能都不会使用此字段。如果贡献者想要克隆一个 repo 以便他们可以在项目上工作,就是这样。
是否会因为 package.json 文件不在该存储库的根目录(尤其是 npm)而中断?
没有。我不相信有什么会坏的。
- 您应该将
repository 字段设置为父项目的顶级.git 路径。此字段的目的是让 SCM(git 等)能够克隆项目。在您的情况下,最接近的是父项目。这应该避免出现警告消息。
- 您应该将
bugs 字段设置为问题页面。这应该会显示在 npm 网站上。我不认为 repository 和 bugs 直接相关,或者 npm 基于另一个做出任何假设。
- 如果您没有其他网站,您可以将
homepage 设置为 github URL,该 URL 指向包含父 repo 中此 npm 模块的目录。在此处粘贴一个 README.md 文件,github 会将其呈现在目录内容下方。