12

git の HEAD ハッシュでpackage.json ( https://npmjs.org/doc/json.html )のバージョン番号を自動的に更新する方法はありますか? version: 1.0.0+rev82e4b91cfe42cd86e9453b4987b9cc446566de6プロジェクトの package.json ファイル内に次のようなものが必要です。プラスの前のすべてが手動で設定され、何かをコミットするたびにハッシュが更新されます。

これは可能ですか?このトピックについては何も見つかりませんでした:-/

4

4 に答える 4

1

git rev-parse HEADビルドを実行するたびに、パッケージのバージョン番号に追加できる、現在の head ブランチへの最後のコミットを書き込みます。

git rev-xxx記録したい追加のものに役立つ可能性のあるコマンドがいくつかあります。

于 2013-11-22T23:07:29.993 に答える
-2

どの時点で自動的に?可能性は次のとおりです。

  1. マシン環境からビルドを実行するたびにバージョン フィールドを更新する
  2. ビルドを実行するたびにバージョン フィールドを更新します。
  3. 同期を保つために、git フックのバージョン フィールドを更新します。個人的には、何かが変化したときに変化を実行するフックについては緊張します。この戦略は、最高のリスク、最高の報酬です。

最初または 2 番目のアプローチを使用する場合は、もちろん、使用するビルド ツールによって異なります。grunt を使用する場合は、grunt プラグインについてを参照してください。あなたが求めていることを実行する面倒​​なプラグインは見つかりませんが、かなり簡単に作成できます。

http://gruntjs.com/plugins

作成する場合は、私にも同様のプロセスが必要なのでお知らせください:)

私の場合、SVN を使用していますが、同じパターンが必要です。ビルド番号として SVN リビジョン番号を付けたいです。

チェックインするファイルのビルド番号を空白のままにし、ビルド環境で新しいビルドの git clone を実行してビルド番号を更新することをお勧めします。その後、ビルドされたパッケージには常に、元の git コミットを示す何かがあります。

チェックアウトしたバージョンをいつでもgitに尋ねることができるので、開発には本当に必要ないと思います。dev でバージョンを把握するために使用できる grunt-git プラグインがあります。(多分git show?)

于 2013-04-08T14:38:49.527 に答える