如何使用 PowerShell 从 Azure CloudShell 访问 Azure DevOps REST API?

How to access Azure DevOps REST API from Azure CloudShell using PowerShell?

我需要从 Azure cloudshell 访问 Azure DevOps TFSGit 存储库,有没有办法打开与 DevOps 的会话并发出命令来获取存储库文件内容。我正在尝试实施 Azure Policy 计划,因为它已被描述 here。在示例 (link) 中,存储库在 GitHub 上,它是 public 存储库,我想使用 Azure DevOps 和私有存储库复制它。

谢谢。

如果要获取存储库内容。现有 api 可以提供帮助 -- Items - Get.

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/items?path={path}&api-version=5.1

您可以查看下面的 poswer shell 演示以了解更多使用信息。

PS C:\Users\****> $personalToken="*******************************"
PS C:\Users\****> $token=[System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($personalToken)"))
PS C:\Users\****> $header=@{authorization="Basic $token"}
PS C:\Users\****> $projectUrl ="https://dev.azure.com/********/********/_apis/git/repositories/51068825-de***********5671/items?path=Test.txt&api-version=5.1"
PS C:\Users\****> $content=Invoke-RestMethod -Uri $projectUrl -Method GET -contentType "application/json" -Headers $header
PS C:\Users\****> $content