【发布时间】:2018-10-03 08:51:57
【问题描述】:
在我们的 azure devops 组织中,我们有大约 100 个项目。每个项目包含 1 到 20 个 git 存储库。这使得很难找到特定的存储库,除非您还记得它位于哪个项目中。
项目列表中的搜索框仅按项目名称搜索。有什么方法可以搜索和查找存储库名称吗?
有一个代码搜索,但返回的结果来自已经在一个存储库中的文件,这会给出冗余和错误的结果。
【问题讨论】:
标签: azure-devops
在我们的 azure devops 组织中,我们有大约 100 个项目。每个项目包含 1 到 20 个 git 存储库。这使得很难找到特定的存储库,除非您还记得它位于哪个项目中。
项目列表中的搜索框仅按项目名称搜索。有什么方法可以搜索和查找存储库名称吗?
有一个代码搜索,但返回的结果来自已经在一个存储库中的文件,这会给出冗余和错误的结果。
【问题讨论】:
标签: azure-devops
我认为最简单的方法是致电this REST API。 您甚至可以从浏览器调用它并使用查找功能。 请注意,project 元素不是必需的。
要自动化,可以使用几行 Powershell 在结果 JSON 文档中进行搜索,例如
$organization = ...
$PAT = ...a personal access token
$repoNameStart = ...initial name of repo
$base64AuthInfo = [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes("dummy:${PAT}"))
$result = Invoke-RestMethod -Method Get -Uri "https://dev.azure.com/${organization}/_apis/git/repositories?api-version=4.1" -Headers @{Authorization = "Basic $base64AuthInfo" } -Credential $credential -ContentType "application/json"
$result.value | where {$_.name -like "${repoNameStart}*"}
(未经测试的代码,以它为例)
【讨论】: