D.1  NPM仓库的安装
  D.1.1  安装Erlang和CouchDB
  D.1.2  搭建NPM仓库
D.2  高阶应用
  D.2.1  镜像仓库
  D.2.2  私有模块应用
  D.2.3  纯私有仓库
D.3  总结
D.4  参考资源

1. what is npm
-- To upgrade: run: [sudo] npm install npm@latest -g

2. Installing Node.js and updating npm
-- node -v to test. The version should be higher than v0.10.32
-- sudo npm install npm -g
-- npm -v to test. The version should be higher than 2.1.8

3. Fixing npm permissions
-- find the path to npm's directory: npm config get prefix
-- change owner: sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

4. Installing npm packages locally
-- npm install <package_name>
-- ls node_modules

5. Using a package.json
-- To create package.json, run: npm init --yes
-- npm set init.author.email "wombat@npm.com"

6. Updating local packages
-- npm update in the same directory as your package.json file
-- npm outdated to test

7. Uninstalling local packages
-- npm uninstall <package>
-- npm uninstall --save <package>

8. Installing npm packages locally
-- npm install -g <package_name>
-- sudo npm install -g <package>

9. Updating local packages
-- npm install -g <package>
-- npm outdated -g --depth=0 to find out which packages need to be updated
-- npm update -g to update all global packages

10. Uninstalling local packages
-- npm uninstall -g <package>

11. Creating Node.js module
author: Your Name <email@example.com> (http://example.com)
--Publish your package to npm
--Make a new directory outside of your project and cd into it
--Run npm install <package>
--Create a test.js file which requires the package and calls the method
--Run node test.js. The message should be output.

12. Publishing npm packages
--npm adduser/npm login to store the credentials on the client
--npm config ls
--npm publish. to check: https://npmjs.com/package/<package>
--npm version patch and npm publish to update package

13. Semantic versioning and npm

14. Working with scoped packages
-- @scope/project-name package's name begin with @, then it is a scoped package.
-- @username/project-name

--sudo npm install -g npm
--npm login

--npm init --scope=username package.json: {"name": "@username/project-name"}
--.npmrc npm config set scope username
--npm publish --access=public

--npm install @username/project-name --save
var projectName = require('@username/project-name')

15. Using dist-tags
--Tags are a supplement to semver for organizing and labeling different versions of packages.
--npm dist-tag add <pkg>@<version> [<tag>]
--npm publish --tag beta
--npm install somepkg@beta

深入浅出Node.js (附录D) - 搭建局域NPM仓库的更多相关文章

  1. 深入浅出Node.js (附录B) - 调试Node

    B.1 Debugger B.2 Node Inspector B.2.1 安装Node Inspector B.2.2 错误堆栈

  2. 深入浅出Node.js (附录A) - 安装Node

    A.1 Windows系统下的Node安装 A.2 Mac系统下Node的安装 A.3 Linux系统下Node的安装 A.4 总结 A.5 参考资源

  3. 深入浅出Node.js (附录C) - Node编码规范

    C.1 根源 C.2 编码规范 C.2.1 空格与格式 C.2.2 命名规范 C.2.3 比较操作 C.2.4 字面量 C.2.5 作用域 C.2.6 数组与对象 C.2.7 异步 C.2.8 类与模 ...

  4. 《深入浅出node.js(朴灵)》【PDF】下载

    <深入浅出node.js(朴灵)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230062563 内容简介 <深入浅出Node. ...

  5. 深入浅出Node.js(上)

    (一):什么是Node.js Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟 ...

  6. 深入浅出Node.js(一):什么是Node.js

    Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到 ...

  7. 深入浅出Node.js(一):什么是Node.js(转贴)

    以下内容转自:http://www.infoq.com/cn/articles/what-is-nodejs/ 作者:崔康 [编者按]:Node.js从2009年诞生至今,已经发展了两年有余,其成长的 ...

  8. 一个月时间整理《深入浅出Node.js》

    今天终于把朴灵老师写的<深入浅出Node.js>给学习完了, 这本书不是一本简单的Node入门书籍,它没有停留在Node介绍或者框架.库的使用层面上,而是从不同的视角来揭示Node自己内在 ...

  9. 深入浅出node.js游戏服务器开发1——基础架构与框架介绍

    2013年04月19日 14:09:37 MJiao 阅读数:4614   深入浅出node.js游戏服务器开发1——基础架构与框架介绍   游戏服务器概述 没开发过游戏的人会觉得游戏服务器是很神秘的 ...

随机推荐

  1. ASP.NET中常用重置数据的方法

    aspx: <asp:Repeater ID="rptProlist" runat="server" onitemdatabound="rptP ...

  2. 第五篇:web之前端之float的几种清除浮动方式

    前端之float的几种清除浮动方式   前端之float的几种清除浮动方式 本节内容 1.float清除方式1 2.float清除方式2 3.float清除方式3 4.float清除方式4 1.flo ...

  3. step2 uboot tag存储主要部分代码

      cmd_bootm.c //传递给内核的参数      int do_bootm (cmd_tbl_t *cmdtp, int flag, int argc, char *argv[])     ...

  4. dispatchkeyevent的调用机制

    http://blog.csdn.net/look85/article/details/23740761 dispatchKeyEvent和onKeyDown关系: 当键盘按下时 首先触发dispat ...

  5. mac管理员密码破解

    方法一:官方解决方法.找出电脑原配的系统盘,找不到就借一张或者刻录一张,重启电脑,启动的时候按C键,选好语言后进入安装的时候,点击“常用工具”,里面有一项是“重设密码”,这时就可以重新设定Mac OS ...

  6. #define和#undefine的用法

    #undef将保持已定义状态且在 作用域内,直到程序结束或者使用#undef 指令取消定义. 预处理器 在此程序中,我们将取消在先前程序中对预处理器的定义. 1 2 3 4 5 6 7 8 9 10 ...

  7. 网页快照 - C#实现

    /// <summary> /// 图片类型枚举 /// </summary> public enum ImageType { GIF = , JPG = , PNG = } ...

  8. AngularJS 路由:ui-router

    UI-Router是Angular-UI提供的客户端路由框架,它解决了原生的ng-route的很多不足:视图不能嵌套.这意味着$scope会发生不必要的重新载入.这也是我们在Onboard中引入ui- ...

  9. 【实习记】2014-08-23网络安全XSS与CSRF总结

        XSS:脚本中的不速之客XSS:跨站脚本(Cross-site scripting)CSRF:冒充用户之手CSRF:跨站请求伪造(Cross-site request forgery) 谷歌搜 ...

  10. Nginx 独立图片服务器的搭建

    为什么需要独立图片服务器? 如果你留心的话,可以发现,现在主流的网站都是有单独的图片服务器的,例如,人人网的为rrimg,淘宝的为taobaocdn,下面还有很多的二级域名. 独立的图片服务器有诸多好 ...