Y.Y*_*.Y. 5 powershell continuous-integration continuous-deployment azure-devops azure-pipelines
我想使用 Azure DevOps (VSTS) 的内部版本号更新我在 AssemblyInfo.cs 中的版本号。
有谁知道我如何通过 PowerShell 做到这一点?
最好的方法是使用程序集信息扩展,并$(Build.BuildNumber)
在版本字段中使用变量。
但是如果你想使用你自己的 PowerShell 脚本,你可以使用这个脚本:
$buildNumber = "$env:Build_BuildNumber"
$pattern = '\[assembly: AssemblyVersion\("(.*)"\)\]'
$AssemblyFiles = Get-ChildItem . AssemblyInfo.cs -rec
foreach ($file in $AssemblyFiles)
{
(Get-Content $file.PSPath) | ForEach-Object{
if($_ -match $pattern){
'[assembly: AssemblyVersion("{0}")]' -f $buildNumber
} else {
# Output line as is
$_
}
} | Set-Content $file.PSPath
}
Run Code Online (Sandbox Code Playgroud)