10

毎日複数のビルド (リリース候補パッケージ) を作成できるが、月に 1 つしか本番環境に昇格できない環境では、すべてのビルドを Git に保存するのは無駄だと思いますが、最後のいくつかのビルドが公開される短期的な場所が必要です。 .

現在、これらを共有ディレクトリに公開しています。過去に、この種のバイナリ パブリッシングに IVY が使用されているのを見たことがあります。Git は、何も削除しないというモデルであるため、肥大化するため、やり過ぎのように思えます。

これらの一時的なビルド成果物を管理/公開するための合意された標準化された方法はありますか?

4

1 に答える 1

14

ビルドアーティファクトをgitに保存するのではなく、継続的インテグレーション(CI)サーバーまたはアーティファクトネクサスなどの専用アーティファクトリポジトリからビルドアーティファクトを共有することを検討します。一般に、すべてのSCMで大きなバイナリを使用することは避けてください。差分をとったり、増分更新を行ったりすることができないため、変更のたびにバイナリの完全なバージョンが保存されるため、gitリポジトリが急速に大きくなります。

ほとんどの継続的インテグレーションツール(Jenkinsなど)には、最後のXビルドアーティファクトまたは先月中に作成されたすべてのビルドアーティファクトをアーカイブする機能があります。また、役立つと思われるビルドをプロモートするプロセスをサポートおよび自動化するのに役立つプラグインもあります(つまり、Jenkinsビルドプロモート)。

アーティファクトリポジトリまたはCIサーバーを使用してビルドアーティファクトを管理することで、通常、APIを介してアーティファクトにアクセスできます。これは、デプロイプロセスを自動化する場合に非常に役立ちます。たとえば、「getLastSuccesfullBuild」や「getLastPromotedBuild(」などの呼び出しを行うことができます。 )'など。

于 2013-01-23T22:23:44.067 に答える