2012-05-01 9 views
2

異なるアプリケーションでバージョン番号を増やす方法があります。 Cocoaアプリケーションにはagvtoolがあり、mavenにはmaven-release-pluginがあり、リリースではバージョン番号が増えます。 nodejsにも同様のツールがありますか?nodejsのバージョン管理ツール

答えて

2

私はあなたがNode.jsの中にバージョン番号をインクリメントするために必要な唯一のものは、のような単純なものであるとき、そのようなツールが過度に重い利きそうですと思う:

sed -i 's/0.1.2/0.2.4/' package.json 

はあなたのためのバージョンを変更しますNode.jsパッケージ?

明示的に新しいバージョンをマークするときにコードをデプロイするものについて話しているのであれば、git hooksを使用し、gitタグが作成されたことを検出してデプロイメントを開始するスクリプトを書く傾向がありますプロセス。

あなたがタグは上記のsedスクリプトを実行すると自動的にnpm publishを実行するために作成されているときを検出するためにpre-applypatchフックを使用することができますが、再び、私はすべてのヘビー級のツールのハンドルを持っていることのポイントが表示されませんそれは単純なスクリプトであるときです(そして、このスクリプトはNode.jsでも書けます)。

+0

はとフォローアップ。 JSONを解析し、 '.version =" 0.2.4 "'を実行して文字列化する方が良いでしょう。 –

+0

はい、いいえ。 '' version: "0.1.2"、 ''という完全修飾を使うべきでしょうが、 '' package.json''フォーマットは完全に定義されていて、 '' version''フィールドは定義の中で明確です。完全なJSON解析と文字列化のポイントを確認してください。 –

0

grunt-bumpは、バージョンバンピング、git tagging/commit/pushを提供します。 gulp-bumpのような他のビルドツールにも同様のパッケージがあります。

同様の機能がnpm versionでも利用できますが、設定オプションは少なくなりました。

1

最も正しい答えはnpm versionです。これはあなたのパッケージのメジャーバージョンをインクリメントし、それはgitリポジトリであれば、それはまた、その変更をコミットし、タグを作成します

npm version major 

:あなたのパッケージのメジャーバージョンをインクリメントする例えば

、バージョンと同じ名前。私は、文字列は `0.1.2`依存関係に表示される場合がありますので、` sed`呼び出しは、バージョンを変更することを使用することはありません

git push 
git push --tags