我已经搜索了这个主题很长一段时间,目前所有的解决方案和示例都在git中工作,但没有针对Mercurial的直接解决方案。
从类似链接的某个地方采取的工作示例。
"private": true
to your package.json
Then to reference private npm module in package.json
{
"name": "myapp",
"dependencies": {
"private-repo": "git+ssh://[email protected]:myaccount/myprivate.git#v1.0.0",
}
}
当我从官方的npm页面阅读时,这一切都只适用于git https://docs.npmjs.com/files/package.json#git-urls-as-dependencies
那么如何在Mercurial中做同样的事情,或者目前它似乎只能用Git进行?
NPM支持git但不支持Mercurial。您可以使用像Kiln这样的东西来托管您的存储库,它允许以Mercurial或git进行访问,但如果没有,您必须克隆到本地并指向NPM。
如果您使用Bitbucket来托管项目的Mercurial仓库,它会提供链接以将项目的快照下载为tar.gz文件。 are actually usable依赖项中的这些URL package.json
。
例如,我的pagedown
项目的download page有一个链接到此URL,用于最新default
分支更改的gzipped快照:
https://bitbucket.org/ncraike/pagedown/get/default.tar.gz
所以在另一个项目的package.json
中,我可以指定:
"dependencies": {
"pagedown": "https://bitbucket.org/ncraike/pagedown/get/default.tar.gz"
}
当我从依赖包中执行npm install
时,npm处理这个问题,将其正确安装到node_modules
子目录中。
这不是Mercurial存储库的一般解决方案(我同意如果npm接受Mercurial URL也很好)但如果你使用Bitbucket或类似网站进行托管,这可能是一个合理的解决方法。