azure-devops - Azure DevOps REST API - 获取工作项的相关链接
问题描述
我试图弄清楚如何通过 Azure DevOps 的 REST API 获取与工作项相关的链接。假设我有一个链接到它的 Git 提交的工作项。我想获取有关此 Git Commit 的详细信息,例如它属于哪个 repo、它的提交哈希等。到目前为止,我拥有以下内容:
function Get-WorkItem {
$Uri = "$($CollectionURI)/$($Project)/_apis/wit/workitems/73?`$expand=all"
Invoke-RestMethod -Headers $Headers -Uri $Uri -Method GET
}
PS> Get-WorkItem
id : 73
rev : 3
fields : ...
_links : @{self=; workItemUpdates=; workItemRevisions=; workItemComments=; html=; workItemType=; fields=}
url : https://dev.azure.com/collection/projectid/_apis/wit/workItems/73
如果我深入研究该relations
部分,我得到的只是:
PS> $(response).relations
rel url attributes
--- --- ----------
ArtifactLink vstfs:///Git/PullRequestId/xx-xx-xx-xx-xx%2Fxx-xx-xx-xx-xx%2Fxx @{authorizedDate=2021-03-18T...
ArtifactLink vstfs:///Git/Commit/xx-xx-xx-xx-xx%2Fxxx-xx-xx-xx-xx%2F<commitId> @{authorizedDate=2021-03-21T...
好的,所以我得到了一个包含字典的列表,每个都有 3 个字段。Rel 字段并没有告诉我太多。URL 字段也是如此。关闭是属性:
$(response).relations.attributes
authorizedDate : 2021-03-18T12:29:03.26Z
id : 10040686
resourceCreatedDate : 2021-03-18T12:29:03.26Z
resourceModifiedDate : 2021-03-18T12:29:03.26Z
revisedDate : 9999-01-01T00:00:00Z
name : Pull Request
authorizedDate : 2021-03-21T12:48:48.677Z
id : 10046754
resourceCreatedDate : 2021-03-21T12:48:48.677Z
resourceModifiedDate : 2021-03-21T12:48:48.677Z
revisedDate : 9999-01-01T00:00:00Z
name : Fixed in Commit
但是这里的commit id格式并不清楚。如何获得提交的 SHA1?
解决方案
推荐阅读
- arrays - 在数组中添加多个元素
- javascript - 如何确定mxgraph中连接的哪一侧
- mysql - 无法在 MySQL LOAD 操作中使用 STR_TO_DATE() 读取日期时间数据
- html - HTML/CSS 下拉转换不起作用
- powershell - 为什么我无法在下面的代码中得到“真”的结果?
- extjs6-modern - ExtJS 6.5.3 - 在 Extjs 现代中找不到“->”的 xtype
- java - 在 Beyond Compare 中获取转换错误
- reactjs - JSX 的 React 条件渲染
- python - 如何在 python 中计算两个 3D 模型(.obj)之间的差异?
- python - 如何在 SQL ALchemy 中使用主键和外键