小编Scu*_*eve的帖子

VSTS 构建包括所有以前的提交作为关联的更改

我有一个问题,使我以前的所有提交都显示为每个新版本中的相关更改。我相信这个问题与使用通配符分支模式自动触发构建定义有关。我在分支名称上的任何提交上触发我们的发布构建,其模式为“release/*”。我们软件的每个生产版本都从一个新的发布分支开始,命名约定为“release/1”、“release/2”等,其中编号与我们发布的软件版本相匹配。

问题在于,当“release/2”构建运行时,相关的更改会显示导致“release/2”的所有提交,包括导致“release/1”的提交。这在每个新版本中都会继续。

我认为它应该工作的方式是只显示当前构建和之前成功构建之间发生的更改。

对这个问题的任何见解将不胜感激。

重现此问题的步骤:

  1. 在 VSTS 中创建一个带有自述文件的 git repo
  2. 创建新的构建定义(空),将 'Get Sources' 步骤设置为您刚刚创建的 repo 并将分支设置为 master
    • 转到选项并将“自动链接此版本中的新工作”设置为启用
    • 转到“触发器”> 持续集成> 触发器状态> 启用> 分支过滤器> 将分支规范设置为“发布/*”(不包括单引号)
  3. 将新的 repo 克隆到您的计算机
  4. 创建一个将用于在 repo 中进行修改的文件,添加并提交该文件。例如我将使用 ver.txt
  5. 将更新的主分支推送到服务器 ( git push origin)
  6. 只需通过项目的 VSTS 构建区域排队即可执行第一次构建
  7. 创建第一个发布分支

    • git checkout -b release/1
    • 对 ver.txt 进行修改(我只是增加了值)
    • git commit -am "Updated to version 1"
    • git push origin release/1
    • 一旦这个分支被推送到服务器,就应该触发构建
    • 构建完成后,查看构建摘要 > 相关更改,请注意列出了此新存储库的所有提交
    • 将发布分支合并回 master
      • git checkout master
      • git merge release/1
      • git branch -d release/1
      • git push origin -d release/1 …

azure-devops azure-pipelines

7
推荐指数
1
解决办法
914
查看次数

标签 统计

azure-devops ×1

azure-pipelines ×1