我正在尝试根据提交的分支来制定构建定义。但是,我在提交信息 API 中找不到与分支信息或引用信息相关的任何地方。
我的请求是这样的
https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249/commits/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4?api-version=1.0
响应与引用完全相同:
{
"parents": [],
"treeId": "7fa1a3523ffef51c525ea476bffff7d648b8cb3d",
"push": {
"pushedBy": {
"id": "8c8c7d32-6b1b-47f4-b2e9-30b477b5ab3d",
"displayName": "Chuck Reinhart",
"uniqueName": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="82e4e3e0f0ebe9e3efe4ebe0e7f0b1c2eaedf6efe3ebeeace1edef" rel="noreferrer noopener nofollow">[email protected]</a>",
"url": "https://fabrikam-fiber-inc.vssps.visualstudio.com/_apis/Identities/8c8c7d32-6b1b-47f4-b2e9-30b477b5ab3d",
"imageUrl": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_api/_common/identityImage?id=8c8c7d32-6b1b-47f4-b2e9-30b477b5ab3d"
},
"pushId": 1,
"date": "2014-01-29T23:33:15.2434002Z"
},
"commitId": "be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4",
"author": {
"name": "Chuck Reinhart",
"email": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="9afcfbf8e8f3f1fbf7fcf3f8ffe8a9daf2f5eef7fbf3f6b4f9f5f7" rel="noreferrer noopener nofollow">[email protected]</a>",
"date": "2014-01-29T23:32:09Z"
},
"committer": {
"name": "Chuck Reinhart",
"email": "<a href="https://stackoverflow.com/cdn-cgi/l/email-protection" class="__cf_email__" data-cfemail="4a2c2b283823212b272c23282f38790a22253e272b232664292527" rel="noreferrer noopener nofollow">[email protected]</a>",
"date": "2014-01-29T23:32:09Z"
},
"comment": "First cut\n",
"url": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249/commits/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4",
"remoteUrl": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_git/Fabrikam-Fiber-Git/commit/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4",
"_links": {
"self": {
"href": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249/commits/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4"
},
"repository": {
"href": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249"
},
"changes": {
"href": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249/commits/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4/changes"
},
"web": {
"href": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_git/Fabrikam-Fiber-Git/commit/be67f8871a4d2c75f13a51c1d3c30ac0d74d4ef4"
},
"tree": {
"href": "https://fabrikam-fiber-inc.visualstudio.com/DefaultCollection/_apis/git/repositories/278d5cd2-584d-4b63-824a-2ba458937249/trees/7fa1a3523ffef51c525ea476bffff7d648b8cb3d"
}
}
}
如何获取提交的分支名称?
引用
https://www.visualstudio.com/en-us/docs/integrate/api/git/commits#just-the-commit
最佳答案
不,没有这样的 REST API 可以通过提交获取分支名称。而且它也是无法访问的,因为一次提交可以属于多个分支。我们用下图来说明:
A---B---E---F master
\ /
C---D dev
这是一个具有master
和dev
分支的分支结构。并且 dev
分支 merge 到 master
并提交 F
。如果你想根据提交D
获取分支名称,你将得到两个分支名称。提交 D
属于两个分支:dev
(第一个父级)和 master
(第二个父级)。
如果你想获取包含给定提交的分支名称,你可以使用 git 命令:
git branch --contains <commit>
关于git - 如何在 VSTS Rest API 中获取提交的分支名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45796106/