azure-devops - 如何在 VSTS API 中删除带注释的标签(git 标签)?

标签 azure-devops azure-devops-rest-api

我能够使用下面的请求成功创建带注释的标签(git 标签),但我无法以编程方式删除它。

POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/annotatedtags?api-version=4.1-preview.1

要求:
{
    "name": "wagner-test-3",
    "message": "wagner-test-3",
    "taggedObject": {
        "objectId": "aaaaab6cad84a07b7bd65cf3519142a12f856baa"
    }
}

根据documentation没有删除端点,所以我尝试了 delete ref endpoint但到目前为止还没有运气。它只返回 400(无效请求)。
DELETE https://dev.azure.com/{organization}/{project}/_apis/git/favorites/refs/{favoriteId}?api-version=4.1-preview.1

回复:
{
    "count": 1,
    "value": {
        "Message": "The request is invalid."
    }
}

谢谢。

最佳答案

我能够弄清楚我自己的问题。删除带注释的标签的方法是使用 Refs API 更新它。但这并没有得到很好的记录。

POST https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryId}/refs?api-version=4.1

要求:
[
    {
        "name": "refs/tags/wagner-test-3",
        "newObjectId": "0000000000000000000000000000000000000000",
        "oldObjectId": "aaaaab6cad84a07b7bd65cf3519142a12f856baa"
    }
]

Azure DevOps 文档:
Refs - Update Refs
创建、更新或 删除 引用文献(分支)。

关于azure-devops - 如何在 VSTS API 中删除带注释的标签(git 标签)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53242495/

相关文章:

c# - 如何使用 VSTS Git API for C# 获取给定提交 ID 的所有拉取请求 ID(来自合并提交)

azure-devops - Azure DevOps API 发布定义

azure-devops - 如何手动将文件发布到 Azure Artifacts?

wpf - 通过 VSTS 将 WPF 应用程序部署到 Hockeyapp 时出现错误 "Version could not be created from build"

tfs - tfsonline 和 TeamCity 的 SSL 代理错误

docker - Microsoft Azure Devops托管代理镜像不起作用

azure - 通过 REST API Powershell 脚本检查 "Allow all pipelines"

azure-devops - 组织设置下的 Azure DevOps 扩展自定义中心组和中心

azure - 如何使用 powershell 从我的 azure 部署管道访问 Azure .net core webiste 文件

angularjs - 通过构建服务器运行时未捕获 PhantomJS