在 Azure DevOps 中查找并下载文件名的所有实例



有没有办法从 Azure DevOps 安装中所有项目的主分支下载具有特定名称的所有文件?

我的任务是记录我们整个代码库的所有appsettings.json文件中的所有条目,如果我不是绝对必须这样做,我宁愿不必遍历所有300个存储库来手动下载这些文件。

没有办法从 Azure DevOps 安装中所有项目的主分支?

不支持此操作。请查看此文档,我们建议针对大产品的不同产品/子模块使用不同的项目(具有一个或多个存储库(。因此,在Azure Devops Service中,没有这种开箱即用的功能来跨项目查找/下载文件。

一个可能的方向:

如果这些appsettings.json文件位于存储库的根目录中。使用这两个 Rest API 可以节省一些时间:

列出当前组织中的所有存储库:

GET https://dev.azure.com/{OrganizationName}/_apis/git/repositories?api-version=5.1

获取文件(下载(:

GET https://dev.azure.com/{OrganizationName}/_apis/git/repositories/{Repositoryid}/items?scopePath=/appsettings.json&download=true&api-version=5.1

可以使用 PowerShell 脚本组合这两个 API。第一个将列出组织中的所有存储库 ID,第二个可以通过不同的存储库 ID 从不同的存储库下载appsettings.json。所以可能的方法可能是运行第一个 api 一次以获取 reposID 列表(您可以检查这个类似的(,然后添加一个循环来逐个获取文件。

相关内容

最新更新