2017-06-21 105 views
1

在未推送到我個人github帳戶一個月左右後,我現在得到下面的終端輸出時,試圖推動我的新創建的Github回購初始提交。推送github回購否認

remote: Permission to <Me>/<MyRepo> .git denied to <me> . fatal: unable to access ' https://github.com/<Me>/<MyRepo> .git/': The requested URL returned error: 403

谷歌搜索變成了一些Github上提供的文件指導我如何解決SSH問題。是有這個可能的SSH問題是回購的URL的方案是http

更多了,最近我已經做了可能導致此錯誤配置兩件事情。我一直在單獨的github賬戶下推動一個工作組織的回購協議。而我現在使用HyperTerm而不是Terminal

因此,鑑於上下文,從我的角度來看,有幾件事可以解釋這種推動被否定,我不確定採取什麼方法來解決它。從我提供的信息來看,診斷根本原因足夠了嗎?

回答

0

Searching google turned up some Github provided documentation instructing me how to resolve SSH issues. Is this potentially an SSH issue given that the repo's url's scheme is http?

這絕對不是一個SSH的問題,因爲倉庫方案是HTTP。相反,這是您的身份驗證的HTTPS問題。

您可能需要清除憑證緩存。

鑑於您所說的「在單獨的github帳戶下推送......」,您可能已使用憑證助手緩存了GitHub憑證。要查看您所使用的憑據幫手,運行此命令:

$ git config --get credential.helper 

例如,如果輸出manager,那麼你使用的是Windows憑據商店。這個問題的答案remove credentials from git介紹瞭如何清除憑據緩存。

+0

謝謝。我提到了我的懷疑態度,認爲它是URL給了URL Scheme。 –

+0

@AlexBollbach對此有什麼好運? –

+1

一些。看看我對@jackar的迴應。似乎從鑰匙串訪問中刪除某些項目會引起git再次要求您的證書。從閱讀他的鏈接並檢查我的推送失敗日誌中可以清楚地看出,通過我的git是在我的GH帳戶上工作的。所以現在,我可以將auth重置爲我的個人帳戶。看起來我不得不要麼學習SSH的做法,或找到一種方法,我輕鬆的工作和個人HTTP/GitHub的權威性之間切換。 –

0

403響應代碼是一個通用的「禁止」,它可能是由很多事情引起的。

如果您的組織或僱主需要特定身份驗證,您需要生成具有正確權限的訪問令牌。

它也通過具有指定了不正確的遠程存儲庫引起的。您可以使用git remote -v

+0

遙控器是正確的。我認爲它可能是不同步的身份驗證信息。 –

+0

如何確保我的HTTP憑證正確? –

1

進行驗證由於您使用的是多個GitHub帳戶,因此您需要確保指定何時克隆該項目。我建議使用git clone https://<insert username>@github.com/<insert username/organization>/<insert repository name>克隆到一個新目錄中。現在git會要求您提供個人帳戶的憑據(而不是您使用的其他帳戶)。

編輯1:OP發現,刪除在MacOS的鑰匙串GitHub的用戶解決了這個問題(短期修復)https://superuser.com/questions/1064197/how-to-switch-git-user-at-terminal

+0

「(而不是您使用的其他帳戶)。」在任何情況下,它都不要求提供憑證。另外,我在這裏沒有克隆。我有一個本地回購,我想推到一個新創建的GitHub回購。 –

+0

我一直在閱讀我必須「輸入密碼」,如果你推到一個HTTP回購,但我不知道如何挑起密碼提示。 –

+0

我看,你有沒有試過這個:https://stackoverflow.com/questions/7548158/having-trouble-switching-github-accounts-on-terminal? – jackar