繁体   English   中英

如何使用 powershell(Azure devops REST API)获取用户提交更改的 Azure devops git repo 文件夹名称

[英]How to get Azure devops git repo folder name where user committed changes using powershell (Azure devops REST API)

我正在编写脚本,我想在其中找出用户提交更改的文件夹的名称

$AzureDevOpsPAT = ""
 
$OrganizationName = ""

$AzureDevOpsAuthenicationHeader = @{Authorization = 'Basic ' + [Convert]::ToBase64String([Text.Encoding]::ASCII.GetBytes(":$($AzureDevOpsPAT)")) }

$UriOrga = "https://dev.azure.com/$($OrganizationName)/"

$uriAccount = $UriOrga + "{Project Name}/_apis/git/repositories/{RepositoryID}/items?api-version=6.0-preview.1"

Invoke-RestMethod -Uri $uriAccount -Method get -Headers $AzureDevOpsAuthenicationHeader -ContentType "application/json"    

这正在返回(它确实返回最近的提交 ID,Object ID 但在路径中它只返回 /)

路径=/;

还与

$uriAccount = $UriOrga + "{Project Name}/_apis/git/repositories/{REPO ID}/commits?api-version=6.0-preview.1"

它返回 -

 author=; committer=; (Nothing for these values just blank)

Que - 我使用了错误的 API 电话吗? 如何获取文件夹名称、提交者名称?

谢谢

您使用没有任何过滤器的请求。 尝试添加额外的过滤器:

  1. 要搜索项目,您可以添加:

  2. 要搜索提交,您可以添加

我们可以通过提交 ID 获取提交文件夹名称

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/commits/{commitId}/changes?api-version=6.0-preview.1

结果:

在此处输入图像描述

并通过以下 API 获取提交者名称

Get https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/commits/{commitId}?api-version=6.0-preview.1 

结果:

在此处输入图像描述

更新1

获取提交者姓名

我使用 postman 跟踪这些结果,我也尝试了 powershell 脚本,请检查。

$url = "https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/commits/{commitId}?api-version=6.0-preview.1"
$connectionToken="PAT"
$base64AuthInfo= [System.Convert]::ToBase64String([System.Text.Encoding]::ASCII.GetBytes(":$($connectionToken)"))
$CommitInfo = Invoke-RestMethod -Uri $url -Headers @{authorization = "Basic $base64AuthInfo"} -Method Get
Write-Host "CommitInfo = $($CommitInfo | ConvertTo-Json -Depth 100)"

结果:

在此处输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM