簡體   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