RTM / RTW / GA /(Whatever:)リリースビルド後にのみトランクのAssemblyInfoを更新します。
Nightly / Beta / RC / QA /(Whatever :)ビルドは、更新されたAssemblyInfo.csのコピー(CIサーバー上の作業コピーから)を適切なブランチまたはタグに取り込むだけです。Subversionを使用しており、コミットされていない変更を加えた作業コピーでブランチ/タグ付けを行うことができます。
これにより、Nightly / Betaビルドの正しいバージョンのAssemblyInfoをブランチまたはタグに保持し、最終リリースが行われた後にのみトランクのAssemblyInfoにタッチすることができます。ビルドサーバーには、このタイプのビルドでトランクにこれをコミットするように指示するスイッチがあります。
FWIWでは、ビルドサーバー(CruiseControl.NET)から渡された、プロジェクトタイプごとに設定されたプロパティに異なる値を使用して、すべてをMSBuildスクリプトから駆動します。
[編集]また、開発者のバージョンのAssemblyInfoは更新されないため(手動で変更しない限り)、ビルドごとに変更されたAssemblyInfoのノイズが発生しないことにも注意してください。開発者がMajor.Minorを制御し、ビルドサーバーがBuildを制御し、QAのリビジョンを独自のシステムにリンクするようにします(WiX / MSIでは無視されるため)。