npm用子模块安装forked-git
npm install forked git with submodule
我正试图让npm通过从package.json
读取的npm install
将node-gitteh
作为依赖项安装。不幸的是,这个npm包在节点0.6.x中被破坏了,但没有问题,因为有一个分叉的repo可以修复这些问题(https://github.com/hughsk/node-gitteh.git)。
现在的问题是,这个分叉的repo有一个子模块,所以如果我尝试从package.json
:中的github下载tar
, "dependencies" : {
"gitteh" : "https://github.com/hughsk/node-gitteh/tarball/master"
}
我得到了一个相当于";未找到子模块文件夹";。如果我手动克隆同一个repo,并从node-gitteh
文件夹中进行递归子模块更新和npm install
,它工作得很好,但我不知道如何让npm做到这一点。
我也遇到过同样的问题,到目前为止,我只是将模块克隆到node_modules中,然后手动更新子模块。如果能让npm自动处理这个问题,那就太好了。
在package.json中有一个脚本字段(请参阅npm文档)所以可以做
"scripts":{"preinstall": "git submodule update -i -r"}
请参阅https://github.com/isaacs/octave-test例如。
根据文档,您需要以特殊格式提供git url。此外,它需要指向git-reo(与git clone
使用的地址相同),而不是github提供的tarball。
在您的情况下(gitoverhttps),它将是:
, "dependencies" : {
"gitteh" : "git+https://github.com/hughsk/node-gitteh"
}
使用此选项,npm将默认为master分支。
相关文章:
- 可以前端maven插件使用节点,npm已经安装
- 在Meteor项目中安装并包含npm模块后出错
- 无法安装节点sass相关性
- 键入环境安装不起作用
- 全局安装gull后出错
- 如何检测安装在firefox4.6ubuntu上的扩展
- Bowerrc后安装挂钩不工作
- 有没有一种方法可以从Javascript检测特定的应用程序是否安装在(AndroidiOS)设备上
- 如何安装Jasmin:Velocity项目上的javascript测试工具
- 如何从mac上完全删除Ionic和Cordova安装
- 角度highchart ng安装
- 如何检测是否未安装在鼠标上
- Babel/Mocha:Mocha已全局安装,但未定义describe()
- 通过Nuget安装Angular JS和Angular JS核心有什么区别
- 在Strongloop中发送推送通知时,设备从安装中删除
- YouTube插件的安装是CKDior
- Gulp Git首先运行提交任务,然后运行推送任务
- Chrome扩展弹出式安装
- 正在安装Quojs
- npm用子模块安装forked-git