2017-10-05 52 views
1

後,我已經通過UI重新命名從foo/bar私人GitHub庫到foo/qux,如果我試圖讓如何通過其新名稱訪問更名爲私人GitHub庫

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用戶界面並沒有這樣做。那麼是否有一種更簡單的方法來獲取現在名爲foo/qux的回購編號?

回答

1

看來GitHub的API,即使你沒有權限讀庫本身(這就是爲什麼我得到一個404的時候,我要求它通過將與舊的專用倉庫名重定向響應其新名稱或甚至其數字ID)。

這讓我錯誤地得出結論,API知道舊名稱而不是新名稱。

在個人身份驗證令牌上選擇「完全控制私有存儲庫」作用域,並且您應該能夠通過其新名稱請求私有存儲庫。

+0

好的... +1(https://stackoverflow.com/a/46609122/6309) – VonC

1

,我收到了404

從 「example-repository-redirects.md」 和官方的博客文章 「Automatic redirects for renamed repositories」(2015年7月),你不應該。

幾個小時後再試一次,萬一是404只有只是在之後重新命名。
但是,回購現在的ID的名稱foo/qux應該是... foo/qux
這意味着你不需要找到它的舊名稱。

+0

事實證明,我沒有正確的權限(似乎我必須授予完全控制存儲庫到個人訪問令牌,如果我甚至想讀私人回購)。 – Andy