首页 > 解决方案 > 是否可以让 Azure DevOps Pipeline 将工件发布到辅助 GIT 存储库?

问题描述

我们目前正在尝试在 Azure DevOps 中自动构建我们的旧 VB6 应用程序。VB6 的(许多)特性之一是您需要在代码中添加行号,以便异常消息告诉您异常发生在哪一行代码(欢迎来到 1998,这是未来)。我们有一个作为构建过程的一部分运行的工具,它生成一组中间源代码,其中包含行号,然后构建到二进制文件中。保留行号代码对于调试目的很重要,我们要做的是将行号代码提交到辅助 GIT 存储库,然后用内部版本号标记提交。如何将构建工件发布到 git 存储库?

标签: gitazure-devops

解决方案


如何将构建工件发布到 git 存储库?

您可以在管道末尾添加CMD / PS任务以运行与 git 相关的命令以在本地克隆存储库、进行更改和提交、标记提交,然后将更改推送到远程存储库。

1.如果第二个git repo是github repo,你可以在CMD任务中试试下面的脚本:

git clone https://{userName}:{userPassword}@github.com/xxx/{RepoName}.git

git checkout master

git config --global user.email MyEmail@outlook.com

git config --global user.name MyName

copy "Test.txt" {RepoName}

cd {RepoName}

git add .

git commit -m "Add line numbered code."

git tag $(Build.BuildNumber)

git push https://{userName}:{userPassword}@github.com/xxx/{RepoName}.git master tag $(Build.BuildNumber)

你应该{userName},{userPassword} and {RepoName}用你自己的信息替换。对于第 5 步,您可以使用copyxcopy命令将文件(包括 .zip 文件)/文件复制到名称为的文件夹中{RepoName}(您的第二个 repo 将下载到此文件夹中)。

2.如果第二个repo是Azure Devops git Repo,还需要确保你当前ProjectName Build Service有创建标签的权限(Project Settings=>Repositories=>Permissions):

在此处输入图像描述

并且要使用 Azure Repo 进行克隆/推送,更推荐使用有限权限的PAT 。


推荐阅读