Jos*_*eal 12 javascript configuration build-system node.js npm
我有一个git repo,我试图将它设置为我项目中的依赖项.使用NPM,我package.json
看起来像这样:
"devDependencies": {
"grunt": "~0.4.0",
"grunt-contrib-connect": "~0.2.0",
"grunt-contrib-watch": "~0.3.1",
"custom": "git://github.com/myGitHubRepo/repo.js.git#b7d53a0cfbe496ad89bde6f22324219d098dedb3",
"grunt-contrib-copy": "~0.4.0"
}
Run Code Online (Sandbox Code Playgroud)
在第一个
npm install
Run Code Online (Sandbox Code Playgroud)
它安装所有内容并毫无问题地获取存储库.但是,如果我改变这个提交哈希让我们说
"custom": "git://github.com/myGitHubRepo/repo.js.git#d6da3a0...", // a different one
Run Code Online (Sandbox Code Playgroud)
它没有更新!任何人都可以指出我怎么能得到这种行为?
我只想分享这段代码,并能够在某些时候更改此版本,并npm
会自动更新此代码.
Nes*_*oro 11
手动更新该特定包对我来说很有效。
为了自动执行此操作,我将此安装后脚本添加到我的 package.json 中
"scripts": {
...
"postinstall": "npm update custom"
}
Run Code Online (Sandbox Code Playgroud)
好的,这就是它的完成方式.
我也很困惑.
所以我在git@github.com上有一个私有的npm模块:myModule/MySweetModule.git我刚刚发布了最新的标记版本.不幸的是我无法弄清楚它是如何工作的,但它可以解决你的主人问题.SOOO你的主分支可以是你的集成分支,你有阶段分支来构建下一个版本.完成版本后,只需将其合并到master并增加私有repo的版本(因此您的私有repo现在从1.0.0升级到1.0.1).如果您调用npm install
它将更新您的仓库,如果主的package.json版本大于当前工作仓库.它将始终采用最新的回购.
我同意.所以,让我们做一个更好的方式!如果你tags
的私人回购版本你可以参考"custom": "git+ssh://git@github.com:usr/proj.git#TAG_NAME"
所以我有一个标签0.1.0
,然后我会在package.json版本中的url像这样."custom": "git+ssh://git@github.com:usr/proj.git#0.1.0"
我相信这是你答案的最佳方法.但我不是一个gitanista
如果您尝试返回某个版本,则表明它无效.所以从版本0.2.2
到0.2.1
它不会更新你的项目.如果您回滚版本,请确保执行npm remove myProj
此操作npm install
.
归档时间: |
|
查看次数: |
8605 次 |
最近记录: |