2017-09-20 12 views
0

VSTSを使用してCI/CDを実現するには、キューに入れられたすべての新しいビルドのバージョン番号を増やすことになっています。新しいビルドごとにバージョン/リビジョン番号を更新する

ビルド定義で1つ以上のタスクを追加するだけで、各プロジェクト出力(dllまたはexe)のリビジョン番号を更新することは可能ですか?実行時にバージョン番号を変更するmsbuild引数があります。

ありがとうございます。

+0

新しいsdkスタイルのプロジェクトタイプでは、そのためのmsbuildパラメータがサポートされていますが、C#の変更は手動で/ regexes経由で行う必要があります([vstsの拡張子](https://marketplace.visualstudio.com/items? itemName = sebastianlux.UpdateAssemblyInfo))ので、あなたが使用しているプロジェクトタイプを指定すると助けになります –

+0

Chrisのソリューションでこの問題を解決しますか? –

+0

starainはありませんでした。私はそれを調べるチャンスを得ていませんでした。 –

答えて

2

BuildNumbersは、スケジュールされたすべてのビルドに対して自動的に作成されます。

[ビルド]> [オプション]> [ビルド番号の形式]セクションで、これを何にするかを指定します。

デフォルト値は次のとおりです。

$(date:yyyyMMdd)$(rev:.r) 

しかし、あなたはあなたのビルドにいくつかの変数を追加した場合、あなたは、次のようなフォーマットを変更することができます。

Build Number Format

:事前に定義されているよう

$(MajorVersion).$(MinorVersion)-$(date:MMdd)$(rev:.r) 

これは、その後のビルド番号と変数の変数

$[BUILD_BUILDNUMBER] - TFS 2010/15/17 Update1 

$(Build.BuildNumber) changed from old $[BUILD_BUILDNUMBER] for Update2 

より多くの情報はここで見つけることができますあなたの解放ステップに通過しますDefault Variables

編集:

はい、DLLにバージョン管理を追加することもできます。我々は(ビルドソリューション工程の前に)ビルドタスクとして追加トリックを行いAA株式のMicrosoft PowerShellスクリプトを使用し、ソースがここで見つけることができます:これは、任意の引数を必要としない

Assembly PowerShell Script

それはビルドプロセスからの変数を使用するので!

+0

Chrisさんに返信してくれてありがとう。もう一つの疑問、私はプロジェクトの出力は、DLLのですので、DLLのバージョン番号を更新する方法は何ですか?ビルド定義にタスクを追加することによって? –

+0

DLLの問題に関する詳細情報を含む答えを編集しました。 –

+0

私のビルドの定義にもう1つの疑問がある私はslnファイルの代わりに複数のプロジェクトファイルを持っているので、すべてのprojファイルをビルドする前にpowershellスクリプトを実行する必要がある –

関連する問題