ファイルバージョンに注入コミットIDがどのようにあるのか知っていますか?すべてのアセンブリが2.0.6565.0
のようなバージョンを持っていますので、6565はTFSのC6565
コミットIDに関連していますか?TFS 2015ビルドvNext更新コミットID付きファイルバージョン
パワーシェルスクリプトが必要です。
ファイルバージョンに注入コミットIDがどのようにあるのか知っていますか?すべてのアセンブリが2.0.6565.0
のようなバージョンを持っていますので、6565はTFSのC6565
コミットIDに関連していますか?TFS 2015ビルドvNext更新コミットID付きファイルバージョン
パワーシェルスクリプトが必要です。
最後に、私はthis postに基づいて自分自身のPSスクリプトを作成しました。 アセンブリ情報を持つすべてのファイルでのアイデアの更新バージョン
$CommitId = ([string]$env:BUILD_SOURCEVERSION) -replace "[^0-9]+", ""
$AllVersionFiles = Get-ChildItem $SourceDir AssemblyInfo.cs -recurse
$regexToFindVersion = "Version\(""([0-9]+)\.([0-9]+).+"""
foreach ($file in $AllVersionFiles)
{
Write-Host "Processing " $file.FullName
(Get-Content $file.FullName) |
%{$_ -replace $regexToFindVersion, ('Version("$1.$2.0.' + $CommitId + '"') } |
Set-Content $file.FullName -Force
}
全スクリプトはhereを見つけることができます。
このスクリプトは、ファイルと製品のバージョンではなく製品のバージョンのみを変更するように変更できますか? –
「製品バージョン」とはどういう意味ですか?このスクリプトはアセンブリのバージョンとアセンブリのファイルバージョンを更新できます。それは 'AssemblyVersion'と 'AssemblyFileVersion'属性をヒットします。正規表現を変更することで、ロジックを自由に変更することができます。ファイルバージョンのみが必要な場合は、 "FileVersion \(" [(0-9)+)\。([0-9] +)。+ "" " – Alezis
あなたの質問が別の投稿TFS 2015. the $(var.SourceLocation) variable is not available at gated-check inに似ている場合、ゲット・チェックイン中にチェックインしていないチェンジセットIDを取得したい場合は、単一のビルドでは不可能です。
あなたがゲーテッドチェックを使用しない場合は、あなたがのAssemblyVersionを設定するには、PowerShellスクリプトで$Env:BUILD_SOURCEVERSION
を使用することができます。ここでは、すでにあなたがそれを参照することができ、以下のウェブサイトではスクリプトです:
もう一度、これは異なった質問です。あなたのポストの第二部分は面白そうです。 – Alezis
はhttp://stackoverflow.com/questions/41763224/tfs-2015-the-var-sourcelocation-variable-is-notに似て、この質問です利用可能なゲートチェックインですか? –
@Cece - MSFT、コミット/チェンジセットIDでdllを更新することに関するこの質問。なぜ落選したのですか?あなたは何が間違っているのか説明できますか? – Alezis
私はあなたのケースを投票していませんでした。 –