npm アップデート バージョン無効、npm バージョン パッチ、npm バージョン マイナー、npm バージョン メジャー、npm アップデート

パッケージ カバーの公開と更新

1. パッケージの公開と更新について

問題があります - npm バージョン パッチには更新されたバージョンがありません!

初めてnpmで簡単なパッケージをリリースした.リリースに成功した後,プロジェクトを明確に記述するために新しいreadme.mdファイルを追加した.更新コマンドを実行した後,バージョン番号が出力されたが,更新はなかったnpm version patch. npm の Web サイトを表示して npm view versions version を実行すると、どのような状況になりますか?

# 第一次发布
$ npm publish
# 输出
...
npm notice Publishing to https://registry.npmjs.org/
+ [email protected]

# 新增 readme.md 文件后
$ npm version patch
# 输出
v0.0.2

# 这时查看版本列表
$ npm view create-captcha versions
# 输出 只有一个版本
0.0.1

npm版のみパッチを実行すると、オンラインパッケージが正常に更新されません。

更新を有効にする方法を教えてください。

引き続き npm 公式 Web サイトのドキュメントを確認すると、バージョンの更新操作が実行された後、新しいバージョンをリリースするために npm publish も必要であることがわかります。npm version patch/minor/major の 3 つのコマンドを実行した後、npm publish を実行して公開する必要があります。

# 微小版本更新,对应版本号v0.0.1 就是 v<major>.<minor>.<patch>, v微小更新.次要更新.主要更新
$ npm version patch
$ npm publish

$ npm version minor
$ npm publish

$ npm version major
$ npm publish

アップデートのリリース結果を表示

結果を表示するには、npmjs.com を開いて独自のパッケージを検索し、クリックしてバージョン番号を表示する方法と、ターミナルのコマンド ラインから表示する方法の 2 つがあります。

# 列出所有线上版本
$ npm view create-captcha versions
# 输出
[ '0.0.1', '0.0.2' ]

# 仅列出线上最新版本
$ npm view create-captcha version
# 输出
0.0.2

2. 開発プロジェクトの更新について npm update に依存

パッケージの更新版がリリースされた後、npm update を使用して、パッケージに依存するプロジェクトを更新しますが、更新が成功していないことがわかります。そのため、npm のドキュメントをもう一度確認して、理由を確認してください。

プロジェクトの依存関係のバージョン識別のさまざまな意味

私たちのプロジェクトの package.json には、異なる更新ルールに対応する、依存バージョンを識別するフィールドの表現方法が 3 つあります。
依存関係でも devDependencies フィールドでも、^ はメジャー バージョンが一貫していることを意味し、~ はマイナー バージョンを意味します。

"dependencies": {
    
    
	"pkg1": "^1.2.3",  // 安装大版本为1的latest最新版本
	"pkg2": "~1.2.3", // >=1.2.3 <1.3.0,次要版本不能高,只更新补丁小版本
	"pkg3": "1.2.3",  // 具体版本
	"pkg4": "^0.1.2"  // 大版本低于1.0.0
	"pkg5": "^0.0.1", // 大版本低于1.0.0
	}

pkg1 は ^ でマークされ、同じメジャー バージョンの最新バージョンをインストールできます (>=1.2.3 <2.0.0);
pkg2 は ~ でマークされ、同じマイナー バージョンの最新バージョンをインストールできます (> =1.2.3 <1.3.0);
pkg3 には識別子がなく、特定の修正済みバージョン 1.2.3 のみをインストールできます。

特に、メジャーバージョンが 1.0.0 より前の場合、^ の役割はメジャーバージョンを制限することではなく、
pkg4 は ^ を使用して識別し、
pkg5 は ^ を使用して識別します. この場合、package.json のバージョン番号最初にのみ実行できます。

例としてReactバージョンを取り上げます

npm view react versions反応のすべてのバージョンを表示するために使用します

反応バージョンのプルーニングを例に取ります
[
'0.0.1', '0.0.2', '0.0.3',
'0.1.2', '
0.2.0', '0.2.1', '0.2.6',
「0.3.0」、「0.3.4」、
「0.14.0」、「0.14.1」、「0.14.10」、「
15.0.0」、「15.0.1」、「
18.2.0」
]

新しいディレクトリを作成し、プロジェクトを初期化し、react の最小バージョンをインストールします。

$ mkdir test-react
$ cd test-react
$ npm init -y
$ npm i [email protected] -S

package.json で依存関係のバージョン番号を取得します

"dependencies": {
    
    
    "react": "^0.0.1"
}

その後、更新してみてください

$ npm update react -S
# 输出 up to date, audited 2 packages in 34s

update コマンドは、package.json 内の 1.0.0 より前のバージョンの react を更新します。これは、それが既に最新バージョンであることを示しています。次に、package.json のバージョンを 0.0.2 に変更し、再度 update コマンドを実行します。

// package.json
"react": "^0.0.2"

// shell
$ npm update react -S
# 输出 changed 1 package, and audited 2 packages in 8s

反応の更新は正常に 0.0.2 に変更されました.バージョンが 1.0.0 よりも低い場合、^ 記号で識別されるバージョンは、それで識別されるマイナー バージョンにのみ制限できることがわかります。

もう一度変更してpackage.json、マイナー バージョン 2 に対応するように変更します。つまり"react": "^0.2.0"、更新を実行します。

$ npm update react -S
# 输出 added 3 packages, changed 1 package, and audited 5 packages in 11s
# 此时 node_modules目录有 ensure-array eventemitter2 react sprintf 四个目录

この時点で、package.json の依存関係が "react": "^0.2.6" に変更されていることを確認し、マイナー バージョン 2 で最新バージョンに更新し、次のバージョンは 0.3.0 です。バージョン番号リストをもう一度貼り付けて確認します。これにより、^ 記号が 1.0.0 よりも低い場合にどのように機能するかがわかります。
[
'0.0.1', '0.0.2', '0.0.3', '
0.1.2',
'0.2.0', '0.2.1', '0.2.6',
'0.3.0', ' 0.3.4'、
'0.14.0'、'0.14.1'、'0.14.10'、
'15.0.0'、'15.0.1'、'
18.2.0'
]

別の方法として、最新バージョンを再インストールして更新しますnpm i xxx@latest -S

自分でリリースしたパッケージに戻り、インストールコマンドを再実行することで依存関係を最新バージョンに更新することもできます。もちろん、react も同様です。試してみてください。

$ npm install create-captcha@latest -S
# 输出
changed 1 package, and audited 2 packages in 4s

バージョン識別を正しく使用するには?

  1. 新しいプロジェクトを開始するときは、通常、最新の依存パッケージをインストールして使用することをお勧めします. 結局、古いバージョンは徐々にメンテナンスを失います.

  2. ただし、既存のプロジェクトで開発している場合は、依存バージョンがプロジェクトと互換性があることを確認する必要があり、本番サーバーにデプロイされたバージョンとの一貫性を高く保つことが最善です。および開発環境では、トラブルシューティングが非常に困難になります。

バージョンアップ結果を見る

npm list を使用して、現在のプロジェクトにインストールされているすべての依存関係のバージョンを表示します。

$ npm list

リリースパッケージを開発する場合でも、プロジェクトで依存関係を使用する場合でも、バージョンを明確に理解する必要があります. このステップをうまく行うことで、その後の開発プロセスで環境関連の問題を回避し、開発効率と幸福度を向上させることができます!

おすすめ

転載: blog.csdn.net/zhouweihua138/article/details/129523382