2016-09-02 13 views
1

これが欠落しているかどうかわからないか、間違っていますが、次の「問題」があります。npm install -SE(マイナーバージョン表記)

は、私が[email protected]パッケージをインストールして、私のpackage.jsonで自動的にそれを保存したいとしましょう

npm install [email protected] -S 

これは私のpackage.jsonにバージョンを記述します^ 3.2.0

npm install [email protected] -SE 

これはバージョン3.2.0

私のpackage.jsonに書くと私はパッチのバージョン表記の利益にしたいと私は私のpackage.jsonで3.2.xのを持っているしたい場合は? 唯一のオプションは手動で追加することですか?

ありがとうございます!

+0

質問を正しく理解している場合は、 '.x'バージョンを行う必要はありません。 '--save'をインストールすると、'^'接頭辞がバージョンに追加されます。これにより、メジャーバージョン番号とマイナーバージョン番号が一致する限り、任意のバージョンをインストールできます。インストールしたものと同じか、それより新しいパッチがインストールされます。したがって、例えば '^ 3.2.0'は3.2.0と3.2.1などを許可します。 '^ 3.2.2'は3.2.2,3.3.3などを許可しますが、3.2.1や3.2.0は許可しません。それはあなたが達成しようとしているものですか? –

+0

あなたは正しいです、私の質問は間違って書かれました。私の考えは3.2.x形式のpackage.jsonを持っているので、マイナーバージョンやメジャーバージョンではなく、npmアップデートですべてのパッチを取得できます。それを行う唯一の方法は、package.jsonファイルを編集することであると思われます。 – ius

+0

^記号の意味は、パッチのバージョンが出たらパッケージを更新するだけです。新しいマイナーバージョンまたはメジャーバージョンが出てくると、パッケージを更新しません。 –

答えて

1

semver略語~は、パッケージのパッチバージョンの更新のみをインストールできますが、マイナーバージョンまたはメジャーバージョンのアップデートはインストールできません(https://docs.npmjs.com/misc/semver#tilde-ranges-123-12-1を参照)。このデフォルトNPMの使用中npm configコマンド

npm config set save-prefix=~

作るために今、チルダは、すべてのパッケージ

npm install foo -S

にインストールされ、npm iを使用している場合のみ、パッチレベルのアップデートがインストールされているために使用されます。

+0

素晴らしい!私は.npmrcを使用したので、すべての開発者にとって同じです。 – ius