#**版本管理**
[TOC]
#Ubuntu使用n进行版本管理
##安装n模块 TJ大神的作品:
~~~
npm install -g n
~~~
##用法
###清除npm缓存
~~~
npm cache clean -f
~~~
###安装最新版本node
~~~
n latest
~~~
###查看所有版本node
~~~
n ls
~~~
###安装指定版本node
~~~
n 版本号
~~~
###删除本地指定版本node
~~~
n rm 版本号
~~~
###安装npm最新版
~~~
npm update npm -g
~~~
#windows使用gnvm进行管理:
>gnvm 是使用go开发的node版本管理器,可以使用它来管理node版本和npm版本
官网:http://ksria.com/gnvm/
GITHUB:[https://github.com/kenshin/gnvm](https://github.com/kenshin/gnvm)
***如果更新npm有错误,请使用淘宝的源,方法参考 更换更快的库 registry***
以下文档均来自官方说明:
## 下载
* [32-bit](https://app.box.com/gnvm/1/2014967291) | [64-bit](https://app.box.com/gnvm/1/2014967689) Host by Box.com
* [32-bit](https://github.com/Kenshin/gnvm-bin/blob/master/32-bit/gnvm.exe?raw=true) | [64-bit](https://github.com/Kenshin/gnvm-bin/blob/master/64-bit/gnvm.exe?raw=true) Host by Github.com
* go 用户,请使用
```go get github.com/Kenshin/gnvm```
* git 用户,请使用
```git clone git@github.com:Kenshin/gnvm-bin.git```
* curl 用户,请使用
~~~
curl -L https://github.com/Kenshin/gnvm-bin/blob/master/32-bit/gnvm.exe?raw=true -o gnvm.exe
curl -L https://github.com/Kenshin/gnvm-bin/blob/master/64-bit/gnvm.exe?raw=true -o gnvm.exe
~~~
## 安装
* 不存在 Node.js 环境
> 下载并解压缩 gnvm.exe 保存到任意文件夹,并将此文件夹加入到环境变量 Path。
* 存在 Node.js 环境
> 下载并解压缩 gnvm.exe 保存到 Node.js 所在的文件夹。
## 验证
* 在 cmd 下,输入 gnvm version,如有 版本说明 则配置成功。
## 功能介绍
~~~
config Setter and getter .gnvmrc file
use Use any the local already exists of Node.js version
ls Show all [local] [remote] Node.js version
install Install any Node.js version
uninstall Uninstall local Node.js version and npm
update Update Node.js latest version
npm NPM version management
session Set any local Node.js version to session Node.js version
search Search and Print Node.js version detail usage wildcard mode or regexp mode
node-version Show [global] [latest] Node.js version
reg Add config property [noderoot] to Environment variable [NODE_HOME]
version Print GNVM version number
~~~
## 术语
* global 当前使用的 Node.js 。
* latest 最新稳定版本的 Node.js 。
* session 当前 cmd 所对应的环境(临时环境)。
* .gnvmrc gnvm.exe 配置文件,无需手动建立,其中保存了 本地 / 远程 Node.js 版本信息等。
* registry node.exe 下载地址,默认为 [DEFAULT](http://nodejs.org/dist/),可更换为 [TAOBAO](http://npm.taobao.org/mirrors/node),并且支持 自定义 URL 。
* noderoot 全局 Node.js 所在的目录(也是 gnvm.exe 所在的目录)。
## 入门指南
> gnvm.exe 是一个单文件 exe,无需任何配置,直接使用。
##### .gnvmrc
~~~
globalversion: 5.0.1
latestversion: 5.10.1
noderoot: /Users/kenshin/Work/28-GO/01-work/src/gnvm
registry: http://npm.taobao.org/mirrors/node/
~~~
##### 更换更快的库 registry
> gnvm.exe 内建了 [DEFAULT](http://nodejs.org/dist/) and [TAOBAO](http://npm.taobao.org/mirrors/node) 两个库。
`gnvm config registry TAOBAO`
##### 安装 多个 Node.js
> 安装任意版本的 Node.js 包括: 自动匹配 latest / io.js version 以及 选择 32 / 64 位,例如 x.xx.xx-x64。
`gnvm install latest 1.0.0-x86 1.0.0-x64 5.0.0 `
##### 卸载本地任意 Node.js 版本
~~~
gnvm uninstall latest 1.0.0-x86 1.0.0-x64 5.0.0
~~~
##### 切换本地存在的任意版本 Node.js
~~~
gnvm use 5.10.1
~~~
##### 列出本地已存在的全部 Node.js 版本
~~~
gnvm ls
~~~
##### 更新本地的 Node.js latest 版本
~~~
gnvm update latest
~~~
##### 安装 NPM
> gnvm 支持安装 npm, 例如:下载最新版的 npm version ,使用 gnvm npm latest。
~~~
gnvm npm latest
~~~
##### 查询 Node.js 版本
> 可以使用关键字 * 或者 正则表达式 /regxp/,例如: gnvm search 5.*.* 或者 gnvm search /.10./ 。
~~~
gnvm search 5.*.*
~~~
## 例子
##### 1\. 不存在 Node.js 环境时,下载 Node.js latest version 并设置为全局 Node.js 。
~~~
gnvm install latest -g
~~~
##### 2\. 升级本地 Node.js latest 版本。
`gnvm update latest `
##### 3\. 查看本地 Node.js global and latest 版本。
` gnvm node-version`
##### 4\. 验证 .gnvmrc registry 正确性。
`gnvm config registry test`
##### 5\. 本地不存在 NPM 时,安装当前 Node.js 版本对应的 NPM 版本。
`gnvm npm global`
##### 6\. 安装 NPM latest 版本。
~~~
gnvm npm laltest
~~~
- 说明
- PHP
- 数组操作
- file操作的常用方法
- PHP字符串输出之Heredoc说明
- require(_once)和include(_once)的理解
- file_get_contents和curl
- PHP的json问题
- PHP提高效率的几点
- PHP/异步任务队列处理
- HTTP_AUTHORIZATION
- php中 intval和string的一些转换问题
- 变量在 PHP7 内部的实现
- 关于exit和die
- php获取微秒
- php高性能日志扩展seaslog的使用
- Curl使用说明
- echo的数据自动增加换行或其他
- php-memcache
- 根据18位数校验前17位身份证号是否正确
- 将一个老项目升级到php7
- ord获取ASCII码
- 框架
- thinkphp5
- THINKPHP5常见问题
- Laravel5学习笔记
- homestead总结
- easywechat学习笔记
- wechat公众号
- 获取用户信息的实现方式
- 前端
- HTML
- CSS
- 伪类和伪元素的区别
- Bootstrap使用
- Javascript
- Javascript梳理总结
- 巧用history.pushState无刷新改变页面url
- jquery日期时间选择器组件datepicker的使用说明
- 基本操作
- 比较
- 后端/Nodejs
- 多nodejs版本管理
- 小功能
- URLAPI
- 二维码转换
- 地图URL直接实现导航
- 字体生成
- 网址长短互转
- 百度短网址
- Fiddle模拟测试百度短网址api
- Composer备忘录
- composer安装配置
- Composer 错误集锦
- Composer使用自己的库
- GIT简单操作命令
- Git记住密码
- git 显示错误详情和请求信息
- 工具软件
- PHPStorm
- VI简单操作命令
- ATOM
- browser提示shockwave false加载失败
- Cmder使用说明
- Windows软件总结
- 浏览器插件
- 支付
- 微信支付
- 支付宝
- 银联支付
- Ping++
- Beecloud支付
- Map
- 百度地图BaiduMap
- RESTfulAPI设计实践
- HTTP
- GET/POST 的请求大小
- 常见状态码说明
- Ubuntu
- 命令行中的>>和>的区别
- 笔记
- 正则
- Hybrid的使用记录
- H5+和mui
- HTML5+和mui使用
- APP开发过程中蓝牙问题总结
- Cordova的使用
- 服务器
- URL重写
- 目录限制访问
- 软链接和硬链接
- 票务系统对接资料和总结
- qunar去哪儿门票对接
- qunar对接case介绍及错误代码
- tuniu门票对接总结
- 途牛小结
- 联合票务对接途牛文档说明
- 途牛签名流程
- meituan美团
- 大众点评
- 联合票务
- 安卓使用技巧
- 安卓清理电池信息
- 安卓6.0使用时发现的问题
- 数据库
- 数据库mysql
- 分页数据优化
- 手机号用不到索引的问题分析
- mysql配置的localhost和127.0.0.1的区别
- mysql5.5升级mysql5.7
- 数据库MongoDB
- Redis使用说明
- phpredis使用说明
- 环境变量
- Twig使用
- 经典的文章
- 用超人的故事讲解 IoC(控制反转) 和 DI(依赖注入)