簡體   English   中英

Git push ssh失敗,使用遠程URL而不是原始名稱--(錯誤:未找到存儲庫)

[英]Git push over ssh fails using remote url instead of origin name - (ERROR: Repository not found)

嗨,我已經用SSH成功​​設置了Git / Github。 我知道這一點是因為我仔細閱讀了Github幫助指南,並檢查了所有結果。

我可以使用以下命令作為示例來推送到我的Github存儲庫:

git push origin <tagname>

但是,當我嘗試執行相同的操作但通過url指定遠程服務器時,它無法告訴我該存儲庫不存在:

git push git@github.com:<organisationname>/<reporname>.git <tagname>

我收到以下錯誤:

錯誤:找不到存儲庫。 致命:無法從遠程存儲庫讀取。

請確保您具有正確的訪問權限,並且存儲庫存在。

git push文檔不支持這兩種語法,因此我很困惑為什么URL版本失敗而“ origin”版本卻不支持?

我發現了這個問題,它實際上是一個簡單的問題。 為發布插件配置的用戶與為訪問回購協議配置的用戶不同。 在我的問題中,我有一個示例,其中包括“ git”作為用戶,它實際上並不代表maven插件使用的URL,而是使用了另一個用戶。

因此,為清楚起見,如果ssh訪問基於“ user1”,並且maven版本插件配置為與“ user2”一起運行,那么這就是我收到失敗的推送的時間。

為了以一種用戶含糊的方式處理此問題,git文檔建議始終使用“ git”用戶進行推送。

例如,即使使用“ user1”的ssh密鑰設置,在我的設置中,以下推送仍然成功:

git push git@github.com:<organisationname>/<reporname>.git <tagname>

但是以下不是:

git push user2@github.com:<organisationname>/<reporname>.git <tagname>

現在我知道了原因,它很明顯,並且感到很愚蠢,因為我最初在我的配置中錯過了它。 這也解釋了為什么原始問題(如果在帶有適當的ssh密鑰的任何回購設置上運行)可以正常工作,如評論所建議的那樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM