GIT

第一次使用Git命令记录:

	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ git config --global user.name "yuejiul"
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ git config --global user.email "1498253108@qq.com"
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ node -v
	v8.12.0
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ npm -v
	6.4.1
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ npm install -g cnpm --registry=https://registry.npm.taobao.org
	npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ ^C
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ npm install npm@5.3.0 @6.4.1
	npm ERR! code EINVALIDTAGNAME
	npm ERR! Invalid tag name "@6.4.1": Tags may not have any characters that encodeURIComponent encodes.
	
	npm ERR! A complete log of this run can be found in:
	npm ERR!     C:\Users\liaopingping\AppData\Roaming\npm-cache\_logs\2018-10-17T05_41_16_615Z-debug.log
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ cnpm -v
	bash: cnpm: command not found
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ npm install npm@4.6.1 -g
	C:\Users\liaopingping\AppData\Roaming\npm\npm -> C:\Users\liaopingping\AppData\Roaming\npm\node_modules\npm\bin\npm-cli.js
	+ npm@4.6.1
	added 299 packages from 591 contributors in 19.376s
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ npm install -g cnpm --registry=https://registry.npm.taobao.org
	npm WARN deprecated socks@1.1.10: If using 2.x branch, please upgrade to at least 2.1.6 to avoid a serious bug with socket data flow and an import issue introduced in 2.1.0
	C:\Users\liaopingping\AppData\Roaming\npm\cnpm -> C:\Users\liaopingping\AppData\Roaming\npm\node_modules\cnpm\bin\cnpm
	C:\Users\liaopingping\AppData\Roaming\npm
	`-- cnpm@6.0.0
	  +-- auto-correct@1.0.0
	  +-- bagpipe@0.3.5
	  +-- colors@1.3.2
	  +-- commander@2.10.0
	  | `-- graceful-readlink@1.0.1
	  +-- cross-spawn@0.2.9
	  | `-- lru-cache@2.7.3
	  +-- debug@2.6.9
	  | `-- ms@2.0.0
	  +-- giturl@1.0.0
	  +-- ini@1.3.5
	  +-- npm@6.4.1
	  | +-- abbrev@1.1.1
	  | +-- ansicolors@0.3.2
	  | +-- ansistyles@0.1.3
	  | +-- aproba@1.2.0
	  | +-- archy@1.0.0
	  | +-- bin-links@1.1.2
	  | | +-- bluebird@3.5.1  deduped
	  | | +-- cmd-shim@2.0.2  deduped
	  | | +-- gentle-fs@2.0.1  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | `-- write-file-atomic@2.3.0  deduped
	  | +-- bluebird@3.5.1
	  | +-- byte-size@4.0.3
	  | +-- cacache@11.2.0
	  | | +-- bluebird@3.5.1  deduped
	  | | +-- chownr@1.0.1  deduped
	  | | +-- figgy-pudding@3.4.1  deduped
	  | | +-- glob@7.1.2  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- lru-cache@4.1.3  deduped
	  | | +-- mississippi@3.0.0  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- move-concurrently@1.0.1  deduped
	  | | +-- promise-inflight@1.0.1  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | +-- ssri@6.0.0  deduped
	  | | +-- unique-filename@1.1.0  deduped
	  | | `-- y18n@4.0.0
	  | +-- call-limit@1.1.0
	  | +-- chownr@1.0.1
	  | +-- ci-info@1.4.0
	  | +-- cli-columns@3.1.2
	  | | +-- string-width@2.1.1
	  | | | +-- is-fullwidth-code-point@2.0.0
	  | | | `-- strip-ansi@4.0.0
	  | | |   `-- ansi-regex@3.0.0
	  | | `-- strip-ansi@3.0.1
	  | |   `-- ansi-regex@2.1.1
	  | +-- cli-table3@0.5.0
	  | | +-- colors@1.1.2
	  | | +-- object-assign@4.1.1
	  | | `-- string-width@2.1.1  deduped
	  | +-- cmd-shim@2.0.2
	  | | +-- graceful-fs@4.1.11  deduped
	  | | `-- mkdirp@0.5.1  deduped
	  | +-- columnify@1.5.4
	  | | +-- strip-ansi@3.0.1  deduped
	  | | `-- wcwidth@1.0.1
	  | |   `-- defaults@1.0.3
	  | |     `-- clone@1.0.4
	  | +-- config-chain@1.1.11
	  | | +-- ini@1.3.5  deduped
	  | | `-- proto-list@1.2.4
	  | +-- debuglog@1.0.1
	  | +-- detect-indent@5.0.0
	  | +-- detect-newline@2.1.0
	  | +-- dezalgo@1.0.3
	  | | +-- asap@2.0.6
	  | | `-- wrappy@1.0.2
	  | +-- editor@1.0.0
	  | +-- figgy-pudding@3.4.1
	  | +-- find-npm-prefix@1.0.2
	  | +-- fs-vacuum@1.2.10
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- path-is-inside@1.0.2  deduped
	  | | `-- rimraf@2.6.2  deduped
	  | +-- fs-write-stream-atomic@1.0.10
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- iferr@0.1.5
	  | | +-- imurmurhash@0.1.4  deduped
	  | | `-- readable-stream@2.3.6  deduped
	  | +-- gentle-fs@2.0.1
	  | | +-- aproba@1.2.0  deduped
	  | | +-- fs-vacuum@1.2.10  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- iferr@0.1.5
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- path-is-inside@1.0.2  deduped
	  | | +-- read-cmd-shim@1.0.1  deduped
	  | | `-- slide@1.1.6  deduped
	  | +-- glob@7.1.2
	  | | +-- fs.realpath@1.0.0
	  | | +-- inflight@1.0.6  deduped
	  | | +-- inherits@2.0.3  deduped
	  | | +-- minimatch@3.0.4
	  | | | `-- brace-expansion@1.1.11
	  | | |   +-- balanced-match@1.0.0
	  | | |   `-- concat-map@0.0.1
	  | | +-- once@1.4.0  deduped
	  | | `-- path-is-absolute@1.0.1
	  | +-- graceful-fs@4.1.11
	  | +-- has-unicode@2.0.1
	  | +-- hosted-git-info@2.7.1
	  | +-- iferr@1.0.2
	  | +-- imurmurhash@0.1.4
	  | +-- inflight@1.0.6
	  | | +-- once@1.4.0  deduped
	  | | `-- wrappy@1.0.2  deduped
	  | +-- inherits@2.0.3
	  | +-- ini@1.3.5
	  | +-- init-package-json@1.10.3
	  | | +-- glob@7.1.2  deduped
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | +-- promzard@0.3.0
	  | | | `-- read@1.0.7  deduped
	  | | +-- read@1.0.7  deduped
	  | | +-- read-package-json@2.0.13  deduped
	  | | +-- semver@5.5.0  deduped
	  | | +-- validate-npm-package-license@3.0.4  deduped
	  | | `-- validate-npm-package-name@3.0.0  deduped
	  | +-- is-cidr@2.0.6
	  | | `-- cidr-regex@2.0.9
	  | |   `-- ip-regex@2.1.0
	  | +-- json-parse-better-errors@1.0.2
	  | +-- JSONStream@1.3.4
	  | | +-- jsonparse@1.3.1
	  | | `-- through@2.3.8
	  | +-- lazy-property@1.0.0
	  | +-- libcipm@2.0.2
	  | | +-- bin-links@1.1.2  deduped
	  | | +-- bluebird@3.5.1  deduped
	  | | +-- find-npm-prefix@1.0.2  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- lock-verify@2.0.2  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- npm-lifecycle@2.1.0  deduped
	  | | +-- npm-logical-tree@1.2.1
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | +-- pacote@8.1.6  deduped
	  | | +-- protoduck@5.0.0
	  | | | `-- genfun@4.0.1
	  | | +-- read-package-json@2.0.13  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | `-- worker-farm@1.6.0  deduped
	  | +-- libnpmhook@4.0.1
	  | | +-- figgy-pudding@3.4.1  deduped
	  | | `-- npm-registry-fetch@3.1.1
	  | |   +-- bluebird@3.5.1  deduped
	  | |   +-- figgy-pudding@3.4.1  deduped
	  | |   +-- lru-cache@4.1.3  deduped
	  | |   +-- make-fetch-happen@4.0.1  deduped
	  | |   `-- npm-package-arg@6.1.0  deduped
	  | +-- libnpx@10.2.0
	  | | +-- dotenv@5.0.1
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | +-- safe-buffer@5.1.2  deduped
	  | | +-- update-notifier@2.5.0  deduped
	  | | +-- which@1.3.1  deduped
	  | | +-- y18n@4.0.0  deduped
	  | | `-- yargs@11.0.0
	  | |   +-- cliui@4.1.0
	  | |   | +-- string-width@2.1.1  deduped
	  | |   | +-- strip-ansi@4.0.0
	  | |   | | `-- ansi-regex@3.0.0
	  | |   | `-- wrap-ansi@2.1.0
	  | |   |   +-- string-width@1.0.2
	  | |   |   | +-- code-point-at@1.1.0  deduped
	  | |   |   | +-- is-fullwidth-code-point@1.0.0  deduped
	  | |   |   | `-- strip-ansi@3.0.1  deduped
	  | |   |   `-- strip-ansi@3.0.1  deduped
	  | |   +-- decamelize@1.2.0
	  | |   +-- find-up@2.1.0
	  | |   | `-- locate-path@2.0.0
	  | |   |   +-- p-locate@2.0.0
	  | |   |   | `-- p-limit@1.2.0
	  | |   |   |   `-- p-try@1.0.0
	  | |   |   `-- path-exists@3.0.0
	  | |   +-- get-caller-file@1.0.2
	  | |   +-- os-locale@2.1.0
	  | |   | +-- execa@0.7.0
	  | |   | | +-- cross-spawn@5.1.0
	  | |   | | | +-- lru-cache@4.1.3  deduped
	  | |   | | | +-- shebang-command@1.2.0
	  | |   | | | | `-- shebang-regex@1.0.0
	  | |   | | | `-- which@1.3.1  deduped
	  | |   | | +-- get-stream@3.0.0  deduped
	  | |   | | +-- is-stream@1.1.0
	  | |   | | +-- npm-run-path@2.0.2
	  | |   | | | `-- path-key@2.0.1
	  | |   | | +-- p-finally@1.0.0
	  | |   | | +-- signal-exit@3.0.2  deduped
	  | |   | | `-- strip-eof@1.0.0
	  | |   | +-- lcid@1.0.0
	  | |   | | `-- invert-kv@1.0.0
	  | |   | `-- mem@1.1.0
	  | |   |   `-- mimic-fn@1.2.0
	  | |   +-- require-directory@2.1.1
	  | |   +-- require-main-filename@1.0.1
	  | |   +-- set-blocking@2.0.0  deduped
	  | |   +-- string-width@2.1.1  deduped
	  | |   +-- which-module@2.0.0
	  | |   +-- y18n@3.2.1
	  | |   `-- yargs-parser@9.0.2
	  | |     `-- camelcase@4.1.0  deduped
	  | +-- lock-verify@2.0.2
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | `-- semver@5.5.0  deduped
	  | +-- lockfile@1.0.4
	  | | `-- signal-exit@3.0.2
	  | +-- lodash._baseindexof@3.1.0
	  | +-- lodash._baseuniq@4.6.0
	  | | +-- lodash._createset@4.0.3
	  | | `-- lodash._root@3.0.1
	  | +-- lodash._bindcallback@3.0.1
	  | +-- lodash._cacheindexof@3.0.2
	  | +-- lodash._createcache@3.1.2
	  | | `-- lodash._getnative@3.9.1  deduped
	  | +-- lodash._getnative@3.9.1
	  | +-- lodash.clonedeep@4.5.0
	  | +-- lodash.restparam@3.6.1
	  | +-- lodash.union@4.6.0
	  | +-- lodash.uniq@4.5.0
	  | +-- lodash.without@4.4.0
	  | +-- lru-cache@4.1.3
	  | | +-- pseudomap@1.0.2
	  | | `-- yallist@2.1.2
	  | +-- meant@1.0.1
	  | +-- mississippi@3.0.0
	  | | +-- concat-stream@1.6.2
	  | | | +-- buffer-from@1.0.0
	  | | | +-- inherits@2.0.3  deduped
	  | | | +-- readable-stream@2.3.6  deduped
	  | | | `-- typedarray@0.0.6
	  | | +-- duplexify@3.6.0
	  | | | +-- end-of-stream@1.4.1  deduped
	  | | | +-- inherits@2.0.3  deduped
	  | | | +-- readable-stream@2.3.6  deduped
	  | | | `-- stream-shift@1.0.0
	  | | +-- end-of-stream@1.4.1
	  | | | `-- once@1.4.0  deduped
	  | | +-- flush-write-stream@1.0.3
	  | | | +-- inherits@2.0.3  deduped
	  | | | `-- readable-stream@2.3.6  deduped
	  | | +-- from2@2.3.0
	  | | | +-- inherits@2.0.3  deduped
	  | | | `-- readable-stream@2.3.6  deduped
	  | | +-- parallel-transform@1.1.0
	  | | | +-- cyclist@0.2.2
	  | | | +-- inherits@2.0.3  deduped
	  | | | `-- readable-stream@2.3.6  deduped
	  | | +-- pump@3.0.0
	  | | | +-- end-of-stream@1.4.1  deduped
	  | | | `-- once@1.4.0  deduped
	  | | +-- pumpify@1.5.1
	  | | | +-- duplexify@3.6.0  deduped
	  | | | +-- inherits@2.0.3  deduped
	  | | | `-- pump@2.0.1
	  | | |   +-- end-of-stream@1.4.1  deduped
	  | | |   `-- once@1.4.0  deduped
	  | | +-- stream-each@1.2.2
	  | | | +-- end-of-stream@1.4.1  deduped
	  | | | `-- stream-shift@1.0.0  deduped
	  | | `-- through2@2.0.3
	  | |   +-- readable-stream@2.3.6  deduped
	  | |   `-- xtend@4.0.1
	  | +-- mkdirp@0.5.1
	  | | `-- minimist@0.0.8
	  | +-- move-concurrently@1.0.1
	  | | +-- aproba@1.2.0  deduped
	  | | +-- copy-concurrently@1.0.5
	  | | | +-- aproba@1.2.0  deduped
	  | | | +-- fs-write-stream-atomic@1.0.10  deduped
	  | | | +-- iferr@0.1.5
	  | | | +-- mkdirp@0.5.1  deduped
	  | | | +-- rimraf@2.6.2  deduped
	  | | | `-- run-queue@1.0.3  deduped
	  | | +-- fs-write-stream-atomic@1.0.10  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | `-- run-queue@1.0.3
	  | |   `-- aproba@1.2.0  deduped
	  | +-- node-gyp@3.8.0
	  | | +-- fstream@1.0.11
	  | | | +-- graceful-fs@4.1.11  deduped
	  | | | +-- inherits@2.0.3  deduped
	  | | | +-- mkdirp@0.5.1  deduped
	  | | | `-- rimraf@2.6.2  deduped
	  | | +-- glob@7.1.2  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- nopt@3.0.6
	  | | | `-- abbrev@1.1.1  deduped
	  | | +-- npmlog@4.1.2  deduped
	  | | +-- osenv@0.1.5  deduped
	  | | +-- request@2.88.0  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | +-- semver@5.3.0
	  | | +-- tar@2.2.1
	  | | | +-- block-stream@0.0.9
	  | | | | `-- inherits@2.0.3  deduped
	  | | | +-- fstream@1.0.11  deduped
	  | | | `-- inherits@2.0.3  deduped
	  | | `-- which@1.3.1  deduped
	  | +-- nopt@4.0.1
	  | | +-- abbrev@1.1.1  deduped
	  | | `-- osenv@0.1.5  deduped
	  | +-- normalize-package-data@2.4.0
	  | | +-- hosted-git-info@2.7.1  deduped
	  | | +-- is-builtin-module@1.0.0
	  | | | `-- builtin-modules@1.1.1
	  | | +-- semver@5.5.0  deduped
	  | | `-- validate-npm-package-license@3.0.4  deduped
	  | +-- npm-audit-report@1.3.1
	  | | +-- cli-table3@0.5.0  deduped
	  | | `-- console-control-strings@1.1.0
	  | +-- npm-cache-filename@1.0.2
	  | +-- npm-install-checks@3.0.0
	  | | `-- semver@5.5.0  deduped
	  | +-- npm-lifecycle@2.1.0
	  | | +-- byline@5.0.0
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- node-gyp@3.8.0  deduped
	  | | +-- resolve-from@4.0.0
	  | | +-- slide@1.1.6  deduped
	  | | +-- uid-number@0.0.6  deduped
	  | | +-- umask@1.1.0  deduped
	  | | `-- which@1.3.1  deduped
	  | +-- npm-package-arg@6.1.0
	  | | +-- hosted-git-info@2.7.1  deduped
	  | | +-- osenv@0.1.5  deduped
	  | | +-- semver@5.5.0  deduped
	  | | `-- validate-npm-package-name@3.0.0  deduped
	  | +-- npm-packlist@1.1.11
	  | | +-- ignore-walk@3.0.1
	  | | | `-- minimatch@3.0.4  deduped
	  | | `-- npm-bundled@1.0.5
	  | +-- npm-pick-manifest@2.1.0
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | `-- semver@5.5.0  deduped
	  | +-- npm-profile@3.0.2
	  | | +-- aproba@1.2.0  deduped
	  | | `-- make-fetch-happen@4.0.1
	  | |   +-- agentkeepalive@3.4.1
	  | |   | `-- humanize-ms@1.2.1
	  | |   |   `-- ms@2.1.1
	  | |   +-- cacache@11.2.0  deduped
	  | |   +-- http-cache-semantics@3.8.1
	  | |   +-- http-proxy-agent@2.1.0
	  | |   | +-- agent-base@4.2.0
	  | |   | | `-- es6-promisify@5.0.0
	  | |   | |   `-- es6-promise@4.2.4
	  | |   | `-- debug@3.1.0
	  | |   |   `-- ms@2.0.0
	  | |   +-- https-proxy-agent@2.2.1
	  | |   | +-- agent-base@4.2.0  deduped
	  | |   | `-- debug@3.1.0  deduped
	  | |   +-- lru-cache@4.1.3  deduped
	  | |   +-- mississippi@3.0.0  deduped
	  | |   +-- node-fetch-npm@2.0.2
	  | |   | +-- encoding@0.1.12
	  | |   | | `-- iconv-lite@0.4.23
	  | |   | |   `-- safer-buffer@2.1.2  deduped
	  | |   | +-- json-parse-better-errors@1.0.2  deduped
	  | |   | `-- safe-buffer@5.1.2  deduped
	  | |   +-- promise-retry@1.1.1  deduped
	  | |   +-- socks-proxy-agent@4.0.1
	  | |   | +-- agent-base@4.2.0  deduped
	  | |   | `-- socks@2.2.0
	  | |   |   +-- ip@1.1.5
	  | |   |   `-- smart-buffer@4.0.1
	  | |   `-- ssri@6.0.0  deduped
	  | +-- npm-registry-client@8.6.0
	  | | +-- concat-stream@1.6.2  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- normalize-package-data@2.4.0  deduped
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | +-- npmlog@4.1.2  deduped
	  | | +-- once@1.4.0  deduped
	  | | +-- request@2.88.0  deduped
	  | | +-- retry@0.10.1
	  | | +-- safe-buffer@5.1.2  deduped
	  | | +-- semver@5.5.0  deduped
	  | | +-- slide@1.1.6  deduped
	  | | `-- ssri@5.3.0
	  | |   `-- safe-buffer@5.1.2  deduped
	  | +-- npm-registry-fetch@1.1.0
	  | | +-- bluebird@3.5.1  deduped
	  | | +-- figgy-pudding@2.0.1
	  | | +-- lru-cache@4.1.3  deduped
	  | | +-- make-fetch-happen@3.0.0
	  | | | +-- agentkeepalive@3.4.1  deduped
	  | | | +-- cacache@10.0.4
	  | | | | +-- bluebird@3.5.1  deduped
	  | | | | +-- chownr@1.0.1  deduped
	  | | | | +-- glob@7.1.2  deduped
	  | | | | +-- graceful-fs@4.1.11  deduped
	  | | | | +-- lru-cache@4.1.3  deduped
	  | | | | +-- mississippi@2.0.0
	  | | | | | +-- concat-stream@1.6.2  deduped
	  | | | | | +-- duplexify@3.6.0  deduped
	  | | | | | +-- end-of-stream@1.4.1  deduped
	  | | | | | +-- flush-write-stream@1.0.3  deduped
	  | | | | | +-- from2@2.3.0  deduped
	  | | | | | +-- parallel-transform@1.1.0  deduped
	  | | | | | +-- pump@2.0.1
	  | | | | | | +-- end-of-stream@1.4.1  deduped
	  | | | | | | `-- once@1.4.0  deduped
	  | | | | | +-- pumpify@1.5.1  deduped
	  | | | | | +-- stream-each@1.2.2  deduped
	  | | | | | `-- through2@2.0.3  deduped
	  | | | | +-- mkdirp@0.5.1  deduped
	  | | | | +-- move-concurrently@1.0.1  deduped
	  | | | | +-- promise-inflight@1.0.1  deduped
	  | | | | +-- rimraf@2.6.2  deduped
	  | | | | +-- ssri@5.3.0  deduped
	  | | | | +-- unique-filename@1.1.0  deduped
	  | | | | `-- y18n@4.0.0  deduped
	  | | | +-- http-cache-semantics@3.8.1  deduped
	  | | | +-- http-proxy-agent@2.1.0  deduped
	  | | | +-- https-proxy-agent@2.2.1  deduped
	  | | | +-- lru-cache@4.1.3  deduped
	  | | | +-- mississippi@3.0.0  deduped
	  | | | +-- node-fetch-npm@2.0.2  deduped
	  | | | +-- promise-retry@1.1.1  deduped
	  | | | +-- socks-proxy-agent@3.0.1
	  | | | | +-- agent-base@4.2.0  deduped
	  | | | | `-- socks@1.1.10
	  | | | |   +-- ip@1.1.5  deduped
	  | | | |   `-- smart-buffer@1.1.15
	  | | | `-- ssri@5.3.0
	  | | |   `-- safe-buffer@5.1.2  deduped
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | `-- safe-buffer@5.1.2  deduped
	  | +-- npm-user-validate@1.0.0
	  | +-- npmlog@4.1.2
	  | | +-- are-we-there-yet@1.1.4
	  | | | +-- delegates@1.0.0
	  | | | `-- readable-stream@2.3.6  deduped
	  | | +-- console-control-strings@1.1.0  deduped
	  | | +-- gauge@2.7.4
	  | | | +-- aproba@1.2.0  deduped
	  | | | +-- console-control-strings@1.1.0  deduped
	  | | | +-- has-unicode@2.0.1  deduped
	  | | | +-- object-assign@4.1.1  deduped
	  | | | +-- signal-exit@3.0.2  deduped
	  | | | +-- string-width@1.0.2
	  | | | | +-- code-point-at@1.1.0
	  | | | | +-- is-fullwidth-code-point@1.0.0
	  | | | | | `-- number-is-nan@1.0.1
	  | | | | `-- strip-ansi@3.0.1  deduped
	  | | | +-- strip-ansi@3.0.1  deduped
	  | | | `-- wide-align@1.1.2
	  | | |   `-- string-width@1.0.2
	  | | |     +-- code-point-at@1.1.0  deduped
	  | | |     +-- is-fullwidth-code-point@1.0.0  deduped
	  | | |     `-- strip-ansi@3.0.1  deduped
	  | | `-- set-blocking@2.0.0
	  | +-- once@1.4.0
	  | | `-- wrappy@1.0.2  deduped
	  | +-- opener@1.5.0
	  | +-- osenv@0.1.5
	  | | +-- os-homedir@1.0.2
	  | | `-- os-tmpdir@1.0.2
	  | +-- pacote@8.1.6
	  | | +-- bluebird@3.5.1  deduped
	  | | +-- cacache@11.2.0  deduped
	  | | +-- get-stream@3.0.0
	  | | +-- glob@7.1.2  deduped
	  | | +-- lru-cache@4.1.3  deduped
	  | | +-- make-fetch-happen@4.0.1  deduped
	  | | +-- minimatch@3.0.4  deduped
	  | | +-- minipass@2.3.3
	  | | | +-- safe-buffer@5.1.2  deduped
	  | | | `-- yallist@3.0.2
	  | | +-- mississippi@3.0.0  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- normalize-package-data@2.4.0  deduped
	  | | +-- npm-package-arg@6.1.0  deduped
	  | | +-- npm-packlist@1.1.11  deduped
	  | | +-- npm-pick-manifest@2.1.0  deduped
	  | | +-- osenv@0.1.5  deduped
	  | | +-- promise-inflight@1.0.1  deduped
	  | | +-- promise-retry@1.1.1
	  | | | +-- err-code@1.1.2
	  | | | `-- retry@0.10.1
	  | | +-- protoduck@5.0.0  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | +-- safe-buffer@5.1.2  deduped
	  | | +-- semver@5.5.0  deduped
	  | | +-- ssri@6.0.0  deduped
	  | | +-- tar@4.4.6  deduped
	  | | +-- unique-filename@1.1.0  deduped
	  | | `-- which@1.3.1  deduped
	  | +-- path-is-inside@1.0.2
	  | +-- promise-inflight@1.0.1
	  | +-- qrcode-terminal@0.12.0
	  | +-- query-string@6.1.0
	  | | +-- decode-uri-component@0.2.0
	  | | `-- strict-uri-encode@2.0.0
	  | +-- qw@1.0.1
	  | +-- read@1.0.7
	  | | `-- mute-stream@0.0.7
	  | +-- read-cmd-shim@1.0.1
	  | | `-- graceful-fs@4.1.11  deduped
	  | +-- read-installed@4.0.3
	  | | +-- debuglog@1.0.1  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- read-package-json@2.0.13  deduped
	  | | +-- readdir-scoped-modules@1.0.2  deduped
	  | | +-- semver@5.5.0  deduped
	  | | +-- slide@1.1.6  deduped
	  | | `-- util-extend@1.0.3
	  | +-- read-package-json@2.0.13
	  | | +-- glob@7.1.2  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- json-parse-better-errors@1.0.2  deduped
	  | | +-- normalize-package-data@2.4.0  deduped
	  | | `-- slash@1.0.0
	  | +-- read-package-tree@5.2.1
	  | | +-- debuglog@1.0.1  deduped
	  | | +-- dezalgo@1.0.3  deduped
	  | | +-- once@1.4.0  deduped
	  | | +-- read-package-json@2.0.13  deduped
	  | | `-- readdir-scoped-modules@1.0.2  deduped
	  | +-- readable-stream@2.3.6
	  | | +-- core-util-is@1.0.2
	  | | +-- inherits@2.0.3  deduped
	  | | +-- isarray@1.0.0
	  | | +-- process-nextick-args@2.0.0
	  | | +-- safe-buffer@5.1.2  deduped
	  | | +-- string_decoder@1.1.1
	  | | | `-- safe-buffer@5.1.2  deduped
	  | | `-- util-deprecate@1.0.2
	  | +-- readdir-scoped-modules@1.0.2
	  | | +-- debuglog@1.0.1  deduped
	  | | +-- dezalgo@1.0.3  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | `-- once@1.4.0  deduped
	  | +-- request@2.88.0
	  | | +-- aws-sign2@0.7.0
	  | | +-- aws4@1.8.0
	  | | +-- caseless@0.12.0
	  | | +-- combined-stream@1.0.6
	  | | | `-- delayed-stream@1.0.0
	  | | +-- extend@3.0.2
	  | | +-- forever-agent@0.6.1
	  | | +-- form-data@2.3.2
	  | | | +-- asynckit@0.4.0
	  | | | +-- combined-stream@1.0.6  deduped
	  | | | `-- mime-types@2.1.19  deduped
	  | | +-- har-validator@5.1.0
	  | | | +-- ajv@5.5.2
	  | | | | +-- co@4.6.0
	  | | | | +-- fast-deep-equal@1.1.0
	  | | | | +-- fast-json-stable-stringify@2.0.0
	  | | | | `-- json-schema-traverse@0.3.1
	  | | | `-- har-schema@2.0.0
	  | | +-- http-signature@1.2.0
	  | | | +-- assert-plus@1.0.0
	  | | | +-- jsprim@1.4.1
	  | | | | +-- assert-plus@1.0.0  deduped
	  | | | | +-- extsprintf@1.3.0
	  | | | | +-- json-schema@0.2.3
	  | | | | `-- verror@1.10.0
	  | | | |   +-- assert-plus@1.0.0  deduped
	  | | | |   +-- core-util-is@1.0.2  deduped
	  | | | |   `-- extsprintf@1.3.0  deduped
	  | | | `-- sshpk@1.14.2
	  | | |   +-- asn1@0.2.4
	  | | |   | `-- safer-buffer@2.1.2  deduped
	  | | |   +-- assert-plus@1.0.0  deduped
	  | | |   +-- bcrypt-pbkdf@1.0.2
	  | | |   | `-- tweetnacl@0.14.5  deduped
	  | | |   +-- dashdash@1.14.1
	  | | |   | `-- assert-plus@1.0.0  deduped
	  | | |   +-- ecc-jsbn@0.1.2
	  | | |   | +-- jsbn@0.1.1  deduped
	  | | |   | `-- safer-buffer@2.1.2  deduped
	  | | |   +-- getpass@0.1.7
	  | | |   | `-- assert-plus@1.0.0  deduped
	  | | |   +-- jsbn@0.1.1
	  | | |   +-- safer-buffer@2.1.2
	  | | |   `-- tweetnacl@0.14.5
	  | | +-- is-typedarray@1.0.0
	  | | +-- isstream@0.1.2
	  | | +-- json-stringify-safe@5.0.1
	  | | +-- mime-types@2.1.19
	  | | | `-- mime-db@1.35.0
	  | | +-- oauth-sign@0.9.0
	  | | +-- performance-now@2.1.0
	  | | +-- qs@6.5.2
	  | | +-- safe-buffer@5.1.2  deduped
	  | | +-- tough-cookie@2.4.3
	  | | | +-- psl@1.1.29
	  | | | `-- punycode@1.4.1
	  | | +-- tunnel-agent@0.6.0
	  | | | `-- safe-buffer@5.1.2  deduped
	  | | `-- uuid@3.3.2  deduped
	  | +-- retry@0.12.0
	  | +-- rimraf@2.6.2
	  | | `-- glob@7.1.2  deduped
	  | +-- safe-buffer@5.1.2
	  | +-- semver@5.5.0
	  | +-- sha@2.0.1
	  | | +-- graceful-fs@4.1.11  deduped
	  | | `-- readable-stream@2.3.6  deduped
	  | +-- slide@1.1.6
	  | +-- sorted-object@2.0.1
	  | +-- sorted-union-stream@2.1.3
	  | | +-- from2@1.3.0
	  | | | +-- inherits@2.0.3  deduped
	  | | | `-- readable-stream@1.1.14
	  | | |   +-- core-util-is@1.0.2  deduped
	  | | |   +-- inherits@2.0.3  deduped
	  | | |   +-- isarray@0.0.1
	  | | |   `-- string_decoder@0.10.31
	  | | `-- stream-iterate@1.2.0
	  | |   +-- readable-stream@2.3.6  deduped
	  | |   `-- stream-shift@1.0.0  deduped
	  | +-- ssri@6.0.0
	  | +-- stringify-package@1.0.0
	  | +-- tar@4.4.6
	  | | +-- chownr@1.0.1  deduped
	  | | +-- fs-minipass@1.2.5
	  | | | `-- minipass@2.3.3  deduped
	  | | +-- minipass@2.3.3  deduped
	  | | +-- minizlib@1.1.0
	  | | | `-- minipass@2.3.3  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- safe-buffer@5.1.2  deduped
	  | | `-- yallist@3.0.2
	  | +-- text-table@0.2.0
	  | +-- tiny-relative-date@1.3.0
	  | +-- uid-number@0.0.6
	  | +-- umask@1.1.0
	  | +-- unique-filename@1.1.0
	  | | `-- unique-slug@2.0.0
	  | |   `-- imurmurhash@0.1.4  deduped
	  | +-- unpipe@1.0.0
	  | +-- update-notifier@2.5.0
	  | | +-- boxen@1.3.0
	  | | | +-- ansi-align@2.0.0
	  | | | | `-- string-width@2.1.1  deduped
	  | | | +-- camelcase@4.1.0
	  | | | +-- chalk@2.4.1  deduped
	  | | | +-- cli-boxes@1.0.0
	  | | | +-- string-width@2.1.1  deduped
	  | | | +-- term-size@1.2.0
	  | | | | `-- execa@0.7.0  deduped
	  | | | `-- widest-line@2.0.0
	  | | |   `-- string-width@2.1.1  deduped
	  | | +-- chalk@2.4.1
	  | | | +-- ansi-styles@3.2.1
	  | | | | `-- color-convert@1.9.1
	  | | | |   `-- color-name@1.1.3
	  | | | +-- escape-string-regexp@1.0.5
	  | | | `-- supports-color@5.4.0
	  | | |   `-- has-flag@3.0.0
	  | | +-- configstore@3.1.2
	  | | | +-- dot-prop@4.2.0
	  | | | | `-- is-obj@1.0.1
	  | | | +-- graceful-fs@4.1.11  deduped
	  | | | +-- make-dir@1.3.0
	  | | | | `-- pify@3.0.0
	  | | | +-- unique-string@1.0.0
	  | | | | `-- crypto-random-string@1.0.0
	  | | | +-- write-file-atomic@2.3.0  deduped
	  | | | `-- xdg-basedir@3.0.0  deduped
	  | | +-- import-lazy@2.1.0
	  | | +-- is-ci@1.1.0
	  | | | `-- ci-info@1.4.0  deduped
	  | | +-- is-installed-globally@0.1.0
	  | | | +-- global-dirs@0.1.1
	  | | | | `-- ini@1.3.5  deduped
	  | | | `-- is-path-inside@1.0.1
	  | | |   `-- path-is-inside@1.0.2  deduped
	  | | +-- is-npm@1.0.0
	  | | +-- latest-version@3.1.0
	  | | | `-- package-json@4.0.1
	  | | |   +-- got@6.7.1
	  | | |   | +-- create-error-class@3.0.2
	  | | |   | | `-- capture-stack-trace@1.0.0
	  | | |   | +-- duplexer3@0.1.4
	  | | |   | +-- get-stream@3.0.0  deduped
	  | | |   | +-- is-redirect@1.0.0
	  | | |   | +-- is-retry-allowed@1.1.0
	  | | |   | +-- is-stream@1.1.0  deduped
	  | | |   | +-- lowercase-keys@1.0.1
	  | | |   | +-- safe-buffer@5.1.2  deduped
	  | | |   | +-- timed-out@4.0.1
	  | | |   | +-- unzip-response@2.0.1
	  | | |   | `-- url-parse-lax@1.0.0
	  | | |   |   `-- prepend-http@1.0.4
	  | | |   +-- registry-auth-token@3.3.2
	  | | |   | +-- rc@1.2.7
	  | | |   | | +-- deep-extend@0.5.1
	  | | |   | | +-- ini@1.3.5  deduped
	  | | |   | | +-- minimist@1.2.0
	  | | |   | | `-- strip-json-comments@2.0.1
	  | | |   | `-- safe-buffer@5.1.2  deduped
	  | | |   +-- registry-url@3.1.0
	  | | |   | `-- rc@1.2.7  deduped
	  | | |   `-- semver@5.5.0  deduped
	  | | +-- semver-diff@2.1.0
	  | | | `-- semver@5.5.0  deduped
	  | | `-- xdg-basedir@3.0.0
	  | +-- uuid@3.3.2
	  | +-- validate-npm-package-license@3.0.4
	  | | +-- spdx-correct@3.0.0
	  | | | +-- spdx-expression-parse@3.0.0  deduped
	  | | | `-- spdx-license-ids@3.0.0
	  | | `-- spdx-expression-parse@3.0.0
	  | |   +-- spdx-exceptions@2.1.0
	  | |   `-- spdx-license-ids@3.0.0  deduped
	  | +-- validate-npm-package-name@3.0.0
	  | | `-- builtins@1.0.3
	  | +-- which@1.3.1
	  | | `-- isexe@2.0.0
	  | +-- worker-farm@1.6.0
	  | | `-- errno@0.1.7
	  | |   `-- prr@1.0.1
	  | `-- write-file-atomic@2.3.0
	  |   +-- graceful-fs@4.1.11  deduped
	  |   +-- imurmurhash@0.1.4  deduped
	  |   `-- signal-exit@3.0.2  deduped
	  +-- npm-request@1.0.0
	  | `-- urllib@2.30.0  deduped
	  +-- npminstall@3.12.0
	  | +-- agentkeepalive@3.5.1
	  | | `-- humanize-ms@1.2.1  deduped
	  | +-- await-event@2.1.0
	  | +-- binary-mirror-config@1.17.0
	  | +-- bytes@2.5.0
	  | +-- chalk@1.1.3
	  | | +-- ansi-styles@2.2.1
	  | | +-- escape-string-regexp@1.0.5
	  | | +-- has-ansi@2.0.0
	  | | | `-- ansi-regex@2.1.1
	  | | +-- strip-ansi@3.0.1
	  | | | `-- ansi-regex@2.1.1  deduped
	  | | `-- supports-color@2.0.0
	  | +-- cmd-shim@2.0.2
	  | | +-- graceful-fs@4.1.11
	  | | `-- mkdirp@0.5.1  deduped
	  | +-- co@4.6.0
	  | +-- co-fs-extra@1.2.1
	  | | +-- co-from-stream@0.0.0
	  | | | `-- co-read@0.0.1
	  | | +-- fs-extra@0.26.7
	  | | | +-- graceful-fs@4.1.11  deduped
	  | | | +-- jsonfile@2.4.0
	  | | | | `-- graceful-fs@4.1.11  deduped
	  | | | +-- klaw@1.3.1
	  | | | | `-- graceful-fs@4.1.11  deduped
	  | | | +-- path-is-absolute@1.0.1
	  | | | `-- rimraf@2.6.2  deduped
	  | | `-- thunkify-wrap@1.0.4
	  | |   `-- enable@1.3.2
	  | +-- co-parallel@1.0.0
	  | | `-- co-thread@0.0.1
	  | +-- debug@2.6.9  deduped
	  | +-- destroy@1.0.4
	  | +-- minimist@1.2.0
	  | +-- mkdirp@0.5.1
	  | | `-- minimist@0.0.8
	  | +-- moment@2.22.2
	  | +-- ms@2.0.0  deduped
	  | +-- mz@2.7.0
	  | | +-- any-promise@1.3.0  deduped
	  | | +-- object-assign@4.1.1
	  | | `-- thenify-all@1.6.0
	  | |   `-- thenify@3.3.0
	  | |     `-- any-promise@1.3.0  deduped
	  | +-- mz-modules@2.1.0
	  | | +-- glob@7.1.3
	  | | | +-- fs.realpath@1.0.0
	  | | | +-- inflight@1.0.6
	  | | | | +-- once@1.4.0  deduped
	  | | | | `-- wrappy@1.0.2  deduped
	  | | | +-- inherits@2.0.3
	  | | | +-- minimatch@3.0.4
	  | | | | `-- brace-expansion@1.1.11
	  | | | |   +-- balanced-match@1.0.0
	  | | | |   `-- concat-map@0.0.1
	  | | | +-- once@1.4.0  deduped
	  | | | `-- path-is-absolute@1.0.1  deduped
	  | | +-- ko-sleep@1.0.3
	  | | | `-- ms@2.0.0  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- pump@3.0.0  deduped
	  | | `-- rimraf@2.6.2  deduped
	  | +-- node-gyp@3.8.0
	  | | +-- fstream@1.0.11
	  | | | +-- graceful-fs@4.1.11  deduped
	  | | | +-- inherits@2.0.3  deduped
	  | | | +-- mkdirp@0.5.1  deduped
	  | | | `-- rimraf@2.6.2  deduped
	  | | +-- glob@7.1.3  deduped
	  | | +-- graceful-fs@4.1.11  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- nopt@3.0.6
	  | | | `-- abbrev@1.1.1
	  | | +-- npmlog@4.1.2
	  | | | +-- are-we-there-yet@1.1.5
	  | | | | +-- delegates@1.0.0
	  | | | | `-- readable-stream@2.3.6
	  | | | |   +-- core-util-is@1.0.2  deduped
	  | | | |   +-- inherits@2.0.3  deduped
	  | | | |   +-- isarray@1.0.0
	  | | | |   +-- process-nextick-args@2.0.0
	  | | | |   +-- safe-buffer@5.1.2  deduped
	  | | | |   +-- string_decoder@1.1.1
	  | | | |   | `-- safe-buffer@5.1.2  deduped
	  | | | |   `-- util-deprecate@1.0.2
	  | | | +-- console-control-strings@1.1.0
	  | | | +-- gauge@2.7.4
	  | | | | +-- aproba@1.2.0
	  | | | | +-- console-control-strings@1.1.0  deduped
	  | | | | +-- has-unicode@2.0.1
	  | | | | +-- object-assign@4.1.1  deduped
	  | | | | +-- signal-exit@3.0.2
	  | | | | +-- string-width@1.0.2
	  | | | | | +-- code-point-at@1.1.0
	  | | | | | +-- is-fullwidth-code-point@1.0.0
	  | | | | | | `-- number-is-nan@1.0.1
	  | | | | | `-- strip-ansi@3.0.1  deduped
	  | | | | +-- strip-ansi@3.0.1  deduped
	  | | | | `-- wide-align@1.1.3
	  | | | |   `-- string-width@1.0.2  deduped
	  | | | `-- set-blocking@2.0.0
	  | | +-- osenv@0.1.5
	  | | | +-- os-homedir@1.0.2
	  | | | `-- os-tmpdir@1.0.2
	  | | +-- request@2.88.0
	  | | | +-- aws-sign2@0.7.0
	  | | | +-- aws4@1.8.0
	  | | | +-- caseless@0.12.0
	  | | | +-- combined-stream@1.0.7
	  | | | | `-- delayed-stream@1.0.0
	  | | | +-- extend@3.0.2
	  | | | +-- forever-agent@0.6.1
	  | | | +-- form-data@2.3.2
	  | | | | +-- asynckit@0.4.0
	  | | | | +-- combined-stream@1.0.6
	  | | | | | `-- delayed-stream@1.0.0  deduped
	  | | | | `-- mime-types@2.1.20  deduped
	  | | | +-- har-validator@5.1.0
	  | | | | +-- ajv@5.5.2
	  | | | | | +-- co@4.6.0  deduped
	  | | | | | +-- fast-deep-equal@1.1.0
	  | | | | | +-- fast-json-stable-stringify@2.0.0
	  | | | | | `-- json-schema-traverse@0.3.1
	  | | | | `-- har-schema@2.0.0
	  | | | +-- http-signature@1.2.0
	  | | | | +-- assert-plus@1.0.0
	  | | | | +-- jsprim@1.4.1
	  | | | | | +-- assert-plus@1.0.0  deduped
	  | | | | | +-- extsprintf@1.3.0
	  | | | | | +-- json-schema@0.2.3
	  | | | | | `-- verror@1.10.0
	  | | | | |   +-- assert-plus@1.0.0  deduped
	  | | | | |   +-- core-util-is@1.0.2  deduped
	  | | | | |   `-- extsprintf@1.3.0  deduped
	  | | | | `-- sshpk@1.15.1
	  | | | |   +-- asn1@0.2.4
	  | | | |   | `-- safer-buffer@2.1.2  deduped
	  | | | |   +-- assert-plus@1.0.0  deduped
	  | | | |   +-- bcrypt-pbkdf@1.0.2
	  | | | |   | `-- tweetnacl@0.14.5  deduped
	  | | | |   +-- dashdash@1.14.1
	  | | | |   | `-- assert-plus@1.0.0  deduped
	  | | | |   +-- ecc-jsbn@0.1.2
	  | | | |   | +-- jsbn@0.1.1  deduped
	  | | | |   | `-- safer-buffer@2.1.2  deduped
	  | | | |   +-- getpass@0.1.7
	  | | | |   | `-- assert-plus@1.0.0  deduped
	  | | | |   +-- jsbn@0.1.1
	  | | | |   +-- safer-buffer@2.1.2  deduped
	  | | | |   `-- tweetnacl@0.14.5
	  | | | +-- is-typedarray@1.0.0
	  | | | +-- isstream@0.1.2
	  | | | +-- json-stringify-safe@5.0.1
	  | | | +-- mime-types@2.1.20
	  | | | | `-- mime-db@1.36.0
	  | | | +-- oauth-sign@0.9.0
	  | | | +-- performance-now@2.1.0
	  | | | +-- qs@6.5.2  deduped
	  | | | +-- safe-buffer@5.1.2  deduped
	  | | | +-- tough-cookie@2.4.3
	  | | | | +-- psl@1.1.29
	  | | | | `-- punycode@1.4.1
	  | | | +-- tunnel-agent@0.6.0
	  | | | | `-- safe-buffer@5.1.2  deduped
	  | | | `-- uuid@3.3.2  deduped
	  | | +-- rimraf@2.6.2  deduped
	  | | +-- semver@5.3.0
	  | | +-- tar@2.2.1
	  | | | +-- block-stream@0.0.9
	  | | | | `-- inherits@2.0.3  deduped
	  | | | +-- fstream@1.0.11  deduped
	  | | | `-- inherits@2.0.3  deduped
	  | | `-- which@1.3.1
	  | |   `-- isexe@2.0.0
	  | +-- node-homedir@1.1.1
	  | +-- normalize-git-url@3.0.2
	  | +-- normalize-package-data@2.4.0
	  | | +-- hosted-git-info@2.7.1
	  | | +-- is-builtin-module@1.0.0
	  | | | `-- builtin-modules@1.1.1
	  | | +-- semver@5.6.0  deduped
	  | | `-- validate-npm-package-license@3.0.4
	  | |   +-- spdx-correct@3.0.2
	  | |   | +-- spdx-expression-parse@3.0.0  deduped
	  | |   | `-- spdx-license-ids@3.0.1
	  | |   `-- spdx-expression-parse@3.0.0
	  | |     +-- spdx-exceptions@2.2.0
	  | |     `-- spdx-license-ids@3.0.1  deduped
	  | +-- npm-package-arg@4.2.1
	  | | +-- hosted-git-info@2.7.1  deduped
	  | | `-- semver@5.6.0  deduped
	  | +-- ora@1.3.0
	  | | +-- chalk@1.1.3  deduped
	  | | +-- cli-cursor@2.1.0
	  | | | `-- restore-cursor@2.0.0
	  | | |   +-- onetime@2.0.1
	  | | |   | `-- mimic-fn@1.2.0
	  | | |   `-- signal-exit@3.0.2  deduped
	  | | +-- cli-spinners@1.3.1
	  | | `-- log-symbols@1.0.2
	  | |   `-- chalk@1.1.3  deduped
	  | +-- rimraf@2.6.2
	  | | `-- glob@7.1.3  deduped
	  | +-- runscript@1.3.0
	  | | +-- debug@2.6.9  deduped
	  | | `-- is-type-of@1.2.1
	  | |   +-- core-util-is@1.0.2
	  | |   +-- is-class-hotfix@0.0.6
	  | |   `-- isstream@0.1.2  deduped
	  | +-- semver@5.6.0
	  | +-- tar@4.4.6
	  | | +-- chownr@1.1.1
	  | | +-- fs-minipass@1.2.5
	  | | | `-- minipass@2.3.4  deduped
	  | | +-- minipass@2.3.4
	  | | | +-- safe-buffer@5.1.2  deduped
	  | | | `-- yallist@3.0.2
	  | | +-- minizlib@1.1.1
	  | | | `-- minipass@2.3.4  deduped
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- safe-buffer@5.1.2
	  | | `-- yallist@3.0.2
	  | +-- urllib@2.30.0  deduped
	  | +-- utility@1.15.0
	  | | +-- copy-to@2.0.1
	  | | +-- escape-html@1.0.3
	  | | +-- mkdirp@0.5.1  deduped
	  | | +-- mz@2.7.0  deduped
	  | | `-- unescape@1.0.1
	  | |   `-- extend-shallow@2.0.1
	  | |     `-- is-extendable@0.1.1
	  | `-- uuid@3.3.2
	  +-- open@0.0.5
	  `-- urllib@2.30.0
	    +-- any-promise@1.3.0
	    +-- content-type@1.0.4
	    +-- debug@2.6.9  deduped
	    +-- default-user-agent@1.0.0
	    | `-- os-name@1.0.3
	    |   +-- osx-release@1.1.0
	    |   | `-- minimist@1.2.0  deduped
	    |   `-- win-release@1.1.1
	    |     `-- semver@5.6.0  deduped
	    +-- digest-header@0.0.1
	    | `-- utility@0.1.11
	    |   `-- address@1.0.3
	    +-- ee-first@1.1.1
	    +-- humanize-ms@1.2.1
	    | `-- ms@2.0.0  deduped
	    +-- iconv-lite@0.4.24
	    | `-- safer-buffer@2.1.2
	    +-- ip@1.1.5
	    +-- proxy-agent@2.3.1
	    | +-- agent-base@4.2.1
	    | | `-- es6-promisify@5.0.0
	    | |   `-- es6-promise@4.2.5
	    | +-- debug@3.2.6
	    | | `-- ms@2.1.1
	    | +-- http-proxy-agent@2.1.0
	    | | +-- agent-base@4.2.1  deduped
	    | | `-- debug@3.1.0
	    | |   `-- ms@2.0.0  deduped
	    | +-- https-proxy-agent@2.2.1
	    | | +-- agent-base@4.2.1  deduped
	    | | `-- debug@3.2.6
	    | |   `-- ms@2.1.1
	    | +-- lru-cache@4.1.3
	    | | +-- pseudomap@1.0.2
	    | | `-- yallist@2.1.2
	    | +-- pac-proxy-agent@2.0.2
	    | | +-- agent-base@4.2.1  deduped
	    | | +-- debug@3.2.6
	    | | | `-- ms@2.1.1
	    | | +-- get-uri@2.0.2
	    | | | +-- data-uri-to-buffer@1.2.0
	    | | | +-- debug@2.6.9  deduped
	    | | | +-- extend@3.0.2  deduped
	    | | | +-- file-uri-to-path@1.0.0
	    | | | +-- ftp@0.3.10
	    | | | | +-- readable-stream@1.1.14
	    | | | | | +-- core-util-is@1.0.2  deduped
	    | | | | | +-- inherits@2.0.3  deduped
	    | | | | | +-- isarray@0.0.1
	    | | | | | `-- string_decoder@0.10.31
	    | | | | `-- xregexp@2.0.0
	    | | | `-- readable-stream@2.3.6  deduped
	    | | +-- http-proxy-agent@2.1.0  deduped
	    | | +-- https-proxy-agent@2.2.1  deduped
	    | | +-- pac-resolver@3.0.0
	    | | | +-- co@4.6.0  deduped
	    | | | +-- degenerator@1.0.4
	    | | | | +-- ast-types@0.11.6
	    | | | | +-- escodegen@1.11.0
	    | | | | | +-- esprima@3.1.3  deduped
	    | | | | | +-- estraverse@4.2.0
	    | | | | | +-- esutils@2.0.2
	    | | | | | +-- optionator@0.8.2
	    | | | | | | +-- deep-is@0.1.3
	    | | | | | | +-- fast-levenshtein@2.0.6
	    | | | | | | +-- levn@0.3.0
	    | | | | | | | +-- prelude-ls@1.1.2  deduped
	    | | | | | | | `-- type-check@0.3.2  deduped
	    | | | | | | +-- prelude-ls@1.1.2
	    | | | | | | +-- type-check@0.3.2
	    | | | | | | | `-- prelude-ls@1.1.2  deduped
	    | | | | | | `-- wordwrap@1.0.0
	    | | | | | `-- source-map@0.6.1
	    | | | | `-- esprima@3.1.3
	    | | | +-- ip@1.1.5  deduped
	    | | | +-- netmask@1.0.6
	    | | | `-- thunkify@2.1.2
	    | | +-- raw-body@2.3.3
	    | | | +-- bytes@3.0.0
	    | | | +-- http-errors@1.6.3
	    | | | | +-- depd@1.1.2
	    | | | | +-- inherits@2.0.3  deduped
	    | | | | +-- setprototypeof@1.1.0
	    | | | | `-- statuses@1.5.0  deduped
	    | | | +-- iconv-lite@0.4.23
	    | | | | `-- safer-buffer@2.1.2  deduped
	    | | | `-- unpipe@1.0.0
	    | | `-- socks-proxy-agent@3.0.1  deduped
	    | +-- proxy-from-env@1.0.0
	    | `-- socks-proxy-agent@3.0.1
	    |   +-- agent-base@4.2.1  deduped
	    |   `-- socks@1.1.10
	    |     +-- ip@1.1.5  deduped
	    |     `-- smart-buffer@1.1.15
	    +-- pump@3.0.0
	    | +-- end-of-stream@1.4.1
	    | | `-- once@1.4.0  deduped
	    | `-- once@1.4.0
	    |   `-- wrappy@1.0.2
	    +-- qs@6.5.2
	    +-- statuses@1.5.0
	    `-- utility@1.15.0  deduped
	
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$ cnpm -v
	'npm' ▒▒▒▒▒ڲ▒▒▒▒ⲿ▒▒▒Ҳ▒▒▒ǿ▒▒▒▒еij▒▒▒
	▒▒▒▒▒▒▒▒▒ļ▒▒▒
	cnpm@6.0.0 (C:\Users\liaopingping\AppData\Roaming\npm\node_modules\cnpm\lib\parse_argv.js)
	npm@6.4.1 (C:\Users\liaopingping\AppData\Roaming\npm\node_modules\cnpm\node_modules\npm\lib\npm.js)
	node@8.12.0 (D:\java\nodejs\node.exe)
	npminstall@3.12.0 (C:\Users\liaopingping\AppData\Roaming\npm\node_modules\cnpm\node_modules\npminstall\lib\index.js)
	prefix=null
	win32 x64 10.0.17134
	registry=https://registry.npm.taobao.org
	
	liaopingping@LAPTOP-NEE9TOL6 MINGW64 ~
	$
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。
Go语言(也称为Golang)是由Google开发的一种静态强类型、编译型的编程语言。它旨在成为一门简单、高效、安全和并发的编程语言,特别适用于构建高性能的服务器和分布式系统。以下是Go语言的一些主要特点和优势: 简洁性:Go语言的语法简单直观,易于学习和使用。它避免了复杂的语法特性,如继承、重载等,转而采用组合和接口来实现代码的复用和扩展。 高性能:Go语言具有出色的性能,可以媲美C和C++。它使用静态类型系统和编译型语言的优势,能够生成高效的机器码。 并发性:Go语言内置了对并发的支持,通过轻量级的goroutine和channel机制,可以轻松实现并发编程。这使得Go语言在构建高性能的服务器和分布式系统时具有天然的优势。 安全性:Go语言具有强大的类型系统和内存管理机制,能够减少运行时错误和内存泄漏等问题。它还支持编译时检查,可以在编译阶段就发现潜在的问题。 标准库:Go语言的标准库非常丰富,包含了大量的实用功能和工具,如网络编程、文件操作、加密解密等。这使得开发者可以更加专注于业务逻辑的实现,而无需花费太多时间在底层功能的实现上。 跨平台:Go语言支持多种操作系统和平台,包括Windows、Linux、macOS等。它使用统一的构建系统(如Go Modules),可以轻松地跨平台编译和运行代码。 开源和社区支持:Go语言是开源的,具有庞大的社区支持和丰富的资源。开发者可以通过社区获取帮助、分享经验和学习资料。 总之,Go语言是一种简单、高效、安全、并发的编程语言,特别适用于构建高性能的服务器和分布式系统。如果你正在寻找一种易于学习和使用的编程语言,并且需要处理大量的并发请求和数据,那么Go语言可能是一个不错的选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值