git - 是否可以让 Azure DevOps Pipeline 将工件发布到辅助 GIT 存储库?
问题描述
我们目前正在尝试在 Azure DevOps 中自动构建我们的旧 VB6 应用程序。VB6 的(许多)特性之一是您需要在代码中添加行号,以便异常消息告诉您异常发生在哪一行代码(欢迎来到 1998,这是未来)。我们有一个作为构建过程的一部分运行的工具,它生成一组中间源代码,其中包含行号,然后构建到二进制文件中。保留行号代码对于调试目的很重要,我们要做的是将行号代码提交到辅助 GIT 存储库,然后用内部版本号标记提交。如何将构建工件发布到 git 存储库?
解决方案
如何将构建工件发布到 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 步,您可以使用copy
或xcopy
命令将文件(包括 .zip 文件)/文件复制到名称为的文件夹中{RepoName}
(您的第二个 repo 将下载到此文件夹中)。
2.如果第二个repo是Azure Devops git Repo,还需要确保你当前ProjectName Build Service
有创建标签的权限(Project Settings=>Repositories=>Permissions):
并且要使用 Azure Repo 进行克隆/推送,更推荐使用有限权限的PAT 。
推荐阅读
- ios - Apple 开发者分发证书
- sql - 如何计算小时数
- python - 我不断收到错误:TypeError: integer argument expected, got float in Python 3.6.5
- xml - 相关元素组的 XPath?
- javascript - 在带有子域的 url 中检测主机
- c++ - Cuda 中的多个 GPU - 以前可以工作的代码,但现在不行了
- django - 在 Django 模板中构建动态 IMG URL
- javascript - js 样式不起作用
- mysql - 如何在 MySQL JSON_CONTAINS 中使用 PDO bindParam?
- regex - 使用正则表达式解析字符串