Windowsでgulpのバージョンアップを簡単に!nodistを使ったおすすめ管理方法を紹介!

Windowsでgulpのバージョンアップを簡単に!nodistを使ったおすすめ管理方法を紹介!

こんばんは。taisonです。
前回記事でPCリフレッシュをしてnode.jsが消えた!っというお話をしました。
Windows8.1にgit for Windowsを導入してgithubに爪痕を残す

 

gitに続き、node.jsの復旧をしようとしたのですが、せっかくだからバージョン管理を簡単にしたい!と思いつきました。

いつも大変だったんです、、、
制作する案件フォルダごとにnode_modulesがあるから、バージョンや記法変わるとそれぞれ手動で調整してたし。

なので今回は案件フォルダごとの管理もふまえて、

簡単・効率的にバージョン管理環境を構築

していきたいと思います。

node.jsのバージョン管理ツール「nodist」

今回はnodistというツールを使って管理環境を構築します。

昔はインストールが結構大変だったみたいですが、今はインストーラーが配布されているので、かなり簡単にインストール出来ます。
(ただインストール先のPC環境によってマチマチのエラーが起きることもあるとか。ドキドキですね、、、)

まず、nodistの公式ページからnodistをダウンロード(NodistSetup-v0.8.×.exeってのがインストールを実行するファイル)。
終わったらさっそく環境構築をしていきます。

ちなみに私のPC環境はWin7 64bit。nodistのバージョンはv0.8.8を選択しました。

nodistでnode.jsをインストール

現在node.jsを使用しているならアンインストール

すでにnode.jsをインストールされている方は、アンインストールも同時に行ってください。
基本はnode.jsのアンインストーラがインストール時のフォルダに入っていると思うので、それでアンインストール。

ゴミフォルダが残ってしまうので、それは手動で削除します。
(\Users\user\AppData\Roming内にnpmとnpm-cacheというフォルダがあるのでそれを削除)

完了したらさっそくnodistでnode.jsをインストールしてみましょう。

インストール可能なバージョンを表示して好きなバージョンをインストール

まずは以下のコマンドでインストールできるnode.jsバージョンを表示してみましょう。

nodist dist

短!こんなんでバージョン見つけられるなんてネット検索いらへんやないか、、、!

で、バージョン表示されたら好きなバージョンを選んで以下のコマンドを入力(これまた短!)

nodist + バージョン(8.5.0みたいなやつ)

インストールされたか確認するにはいつもの

node -v

でOK。

うまくいきました?
私はなぜかバージョンが更新されませんでした、、

nodist +したときコマンド表示上はインストールできた!みたいな感じなのに、いざバージョンチェックしてみるとなぜか前のバージョンが表示される、、、
(最新安定版をインストールしてくれるはずのnodist stableコマンドも同様に効かず)

もしかすると過去ログが残っていたのかも、、、

nodist latest

で最新版を落としたらなんなくインストールできたので結果オーライなのですが、なんだかモヤモヤします。

node.jsのバージョン確認と動作確認

なにはともあれここまできたら、念のためバージョンチェックをして、動くかどうか試してみましょう。

gulpのプラグインやnode_modulesのアップデート

新規でインストールする場合であれば必要ないのですが、元々node.js関連のツールを入れている方は、モジュールなどのアップデートが必要です。
ここでは、gulpを例に書いていきますね。

一応やり方は掲載しますが、ぶっちゃけnode_modulesとpackage.json削除して新たに作りなおす方が確実です。
gulpなら作りなおしても影響はない(gulpのバージョンごとの記法によりgulpfile.jsをちょっと修正するくらい)ので、下手にエラーで時間取られるよりはマシですし。

もし、下記を試してうまくいかなければ、いさぎよく削除しちゃいましょう。

npm-check-updatesでバージョンの差異をチェック!

まずグローバルにnpm-check-updatesをインストール。

npm install -g npm-check-update

次にpackage.jsonが置いてあるフォルダで下記コマンドを入力。

ncu

これもめちゃくちゃ短くて簡単。コマンドを打つと、現状のバージョンと最新のバージョンが並んで表示されるので、変更できるようであればアップデートのコマンドを入力します。

ncu -u

これでpackage.json(プラグイン部分)のアップデートができます。

  npm-install-missingで足りないモジュールをインストール

プラグインをアップデートしていざgulpを使用すると、こんなエラーが。

module.js:529
    throw err;
    ^

Error: Cannot find module 'internal/errors'
    at Function.Module._resolveFilename (module.js:527:15)
    at Function.Module._load (module.js:476:23)
    at Module.require (module.js:568:17)
    at require (internal/module.js:11:18)
    at evalmachine.:36:16
    at Module._compile (module.js:624:30)
    at Object.Module._extensions..js (module.js:635:10)
    at Module.load (module.js:545:32)
    at tryModuleLoad (module.js:508:12)

なんか「モジュールが見つかんないよ」って言われてます。
どうやらmodule内のデータが足りないことでエラーが起きているみたいですね。
しかたない。足りないモジュールを補充してあげます。

まずは部品補充するモジュールをインストールしましょう。

npm install -g npm-install-missing

次にコマンド入力で足りないモジュールをインストール。

npm-install-missing

基本これでモジュールの補填が完了するはずです。
うまくいかない場合は、package.jsonに記載されているgulpのバージョンがキチンと指定されているか、プラグインなどバージョンの差異はないかチェックしてみてください。

ダメだったら?

潔くnode_modulesとpackage.jsonを削除してインストールし直しましょう 笑

gulpのアップデート管理は簡単になりましたか?

いやあだいぶ管理が簡単になりました。

大本のnode.jsアップデートが簡単になったおかげで、これから案件ごとの管理も簡略化できそうです。
上記で起きたエラーもnodist実装後は起きないかもしれないし。(アップデート後最新版更新されていないので確かめられず)

エラー部分に関しては、使っていく中で状況を記録していき、また記事にしたいと思います。
何事もなきゃあいいけどなあ、、、

それではまた!

制作に役立つカテゴリの最新記事