Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/git/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git Azure Devops构建管道-单击一次应用程序发布版本控制策略_Git_Azure Devops_Clickonce_Versioning - Fatal编程技术网

Git Azure Devops构建管道-单击一次应用程序发布版本控制策略

Git Azure Devops构建管道-单击一次应用程序发布版本控制策略,git,azure-devops,clickonce,versioning,Git,Azure Devops,Clickonce,Versioning,当有人进入dev分支时,会发布一个新的测试版本。现在,开发人员必须手动指定发布版本,并且所需的最低版本将自动设置为发布版本-因此,强制更新click once应用程序 理想情况下,开发人员不需要指定发布版本,因为它应该是一个滚动版本,并且总是比上一个版本晚一个版本号。我可以编写一个Powershell脚本来检查最新版本,并在构建管道中增加版本号,这样我们就有了一个增量构建。但这有一个缺点,即发布的版本号没有在源代码管理系统中检查 我如何处理这个问题 但这有一个缺点,即发布的版本号不正确 已在源代

当有人进入dev分支时,会发布一个新的测试版本。现在,开发人员必须手动指定发布版本,并且所需的最低版本将自动设置为发布版本-因此,强制更新click once应用程序

理想情况下,开发人员不需要指定发布版本,因为它应该是一个滚动版本,并且总是比上一个版本晚一个版本号。我可以编写一个Powershell脚本来检查最新版本,并在构建管道中增加版本号,这样我们就有了一个增量构建。但这有一个缺点,即发布的版本号没有在源代码管理系统中检查

我如何处理这个问题

但这有一个缺点,即发布的版本号不正确 已在源代码管理系统中签入。我如何处理这个问题

clickonce应用程序的发布版本由xx.csproj中定义的ApplicationRevision和ApplicationVersion属性控制

在Azure devops服务中,我们总是通过使用way将新值传递给msbuild参数来指定发布版本。但这不会更改项目文件中的实际定义:

  <ApplicationRevision>xxx</ApplicationRevision>
  <ApplicationVersion>xxx</ApplicationVersion>
因为我们用这种方式指定发布版本,所以很难将发布版本添加到源代码管理系统中

作为替代解决方案:

<>你可以考虑用Azure DeVoP预定义变量指定版本。对我来说,我使用的构建编号格式如下:

然后我将$Build.BuildNumber作为ApplicationRevision属性传递。所以现在我有一个不断增加的发布版本。我可以检查管道历史记录,以了解在哪个run和相应的commit中成功发布:

由于我们在命令行中使用临时值指定版本,所以到目前为止,我们无法将临时值添加到源代码管理中