我有一个项目托管在VSTS中,我正在试验构建定义。我正在尝试执行一个PowerShell脚本,在Project构建之前更新AssemblyVersion.cs。当我在本地运行脚本时,它可以正常工作,但是当它在构建过程中运行时,脚本无错地运行,但AssemblyVersion.cs不会更新。VSTS中的Powershell脚本构建定义不更新AssemblyVersion.cs
$regex = '\[assembly: AssemblyVersion\("(.*)"\)\]'
$assemblyInfoPath = "..\Properties\AssemblyInfo.cs"
(Get-Content $assemblyInfoPath) | ForEach-Object {
if($_ -match $regex)
{
# Get current version, and update revision number
$version = [version]$matches[1]
$newVersion = "{0}.{1}.{2}.{3}" -f $version.Major, $version.Minor, $version.Build, ($version.Revision + 1)
'[assembly: AssemblyVersion("{0}")]' -f $newVersion
Write-Host "Version updated to: $newVersion"
}
else
{
$_
}
} | Set-Content $assemblyInfoPath
生成输出指出版本已更新,但是当我在文件查看器中查看AssemblyInfo.cs时,它显示旧版本。
你在说什么文件查看器?来自源代码控制的一个?那个人工制品呢?或者生成机器上的Windows资源管理器? – baywet
@baywet源代码管理文件查看器 – DeepDuck
您现在是否解决了这个问题? –