【问题标题】:How to access a renamed private GitHub repo via its new name如何通过新名称访问重命名的私有 GitHub 存储库
【发布时间】:2018-03-17 16:12:21
【问题描述】:

在我通过 UI 将私有 GitHub 存储库从 foo/bar 重命名为 foo/qux 之后,如果我尝试获取

https://api.github.com/repos/foo/qux

我得到一个 404。

如果我通过旧名称 (https://api.github.com/repos/foo/bar) 请求,我会得到重定向。但总的来说,我没有以前的存储库名称可以使用,所以这不是一个选择。

我能想到的最佳解决方案是获取https://api.github.com/user/repos,翻阅所有回购并找到名为foo/qux 的回购。但这很糟糕,当我转到https://github.com/foo/qux 时,我确信 GitHub UI 不会这样做。那么有没有更简单的方法来获取现在名为 foo/qux 的 repo 的 ID?

【问题讨论】:

    标签: github github-api renaming


    【解决方案1】:

    看起来 GitHub API 将响应旧私有存储库名称的重定向即使您没有读取存储库本身的权限(这就是为什么我在我的时候收到 404通过它的新名称甚至它的数字 ID 请求它)。

    这导致我错误地得出 API 知道旧名称但不知道新名称的结论。

    在个人身份验证令牌上选择“完全控制私有存储库”范围,您应该能够通过其新名称请求私有存储库。

    【讨论】:

    【解决方案2】:

    我得到一个 404。

    来自“example-repository-redirects.md”和官方博文“Automatic redirects for renamed repositories”(2015 年 7 月),您不应该这样做。

    几个小时后重试,以防它只是 404就在重命名之后
    但是名为 foo/qux 的 repo now 的 ID 应该是...foo/qux
    这意味着您不需要找到它的旧名称。

    【讨论】:

    • 事实证明我没有正确的权限(如果我什至想读取私人存储库,似乎我必须将存储库的完全控制权授予个人访问令牌)。
    猜你喜欢
    • 2011-08-10
    • 2013-03-23
    • 2012-12-04
    • 2021-02-10
    • 2018-11-27
    • 2021-01-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多