【问题标题】:How to find forks of a repository in Azure DevOps如何在 Azure DevOps 中查找存储库的分支
【发布时间】:2021-10-24 05:52:04
【问题描述】:

在 GitLab 中,我可以通过单击以下链接查看谁对我的存储库进行了分叉:

有谁知道 Azure DevOps 中是否有类似的功能?

我能够找到以下 API 调用,但它似乎不起作用:

https://docs.microsoft.com/en-us/rest/api/azure/devops/git/forks/list?view=azure-devops-rest-6.0

-> 我将一个 repo 和各种容器 id 传递给它,我知道那里有该 repo 的分支,它返回空结果。

即使我通过手动遍历 UI 在 Azure devops 中找到了一个分支,我也无法找到一个位置来查看该 repo 的分支。

任何关于上述内容的帮助将不胜感激。

【问题讨论】:

  • 你注意到那是它的 api 6.1 预览版吗?
  • 是的,我确实注意到了 - 这种行为适用于 API 的所有版本。

标签: azure azure-devops fork


【解决方案1】:

即使我通过手动遍历 UI 在 Azure devops 中找到了一个分支,我也无法找到一个位置来查看该 repo 的分支。

您可以使用 REST API Forks - Get Fork Sync Requests 检索此存储库上所有请求的分叉同步操作:

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryNameOrId}/forkSyncRequests?api-version=6.0-preview.1

作为测试结果:

我们可以知道当前 repo 的 repo ID。

我们可以使用Repositories - List 来知道回购的名称:

更新:

在 GitLab 中,我可以通过以下方式查看 谁分叉了我的存储库 点击链接。有谁知道是否有类似的能力 在 Azure DevOps 中?

如果你想知道谁分叉了你的 repo,你可以使用你的 REST API

Forks - List:

GET https://dev.azure.com/{organization}/{project}/_apis/git/repositories/{repositoryNameOrId}/forks/{collectionId}?api-version=6.0-preview.1

我们可以使用collectionId 的组织ID。我们可以使用以下 RETS API 来获取 oraganiztion id:

发帖https://dev.azure.com/{organization1}/_apis/Contribution/HierarchyQuery?api-version=5.0-preview.1

主体:

{
    "contributionIds": ["ms.vss-features.my-organizations-data-provider"],
    "dataProviderContext":
        {
            "properties":{}
        }
}

测试结果:

【讨论】:

  • "Forks - Get Fork Sync Requests" 为我返回零结果,即使我知道 repo 的分叉存在。我认为,如果人们将同步配置为发生而不是一次性分叉,这可能只会返回结果。
  • @platinum_pidgeon,好的,如果我理解你的正确,你想知道谁 fork 你的存储库?但你在你的问题中说,“我找不到一个地方来查看那个 repo 是从哪里分叉的。 “,以上方法只能根据子分叉返回父分叉。那么,你想知道基于父叉子的子叉子吗?
  • @platinum_pidgeon,如果我理解你是正确的,请查看我更新的答案。
猜你喜欢
  • 2021-04-21
  • 2022-11-15
  • 2021-10-09
  • 2021-11-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-17
相关资源
最近更新 更多