Windows下解決github push failed (remote: Permission to userA/XXXX.git denied to userB.) 上傳gitHub失敗報錯

 

 

Windows環境下解決 github push failed (remote: Permission to userA/XXXX.git denied to userB.)

· 初學GitHub的朋友遇到可能會遇到一些很難找到答案的問題,這個就是一個找了3天才有點眉目的問題,如今把解決方法分享給你們,但願初學者少走彎路。html

下面假設了兩個用戶 userA 和 userB ,userA的github項目名爲 XXXX.gitjava

----------------------------------------------------------------------------------------------------------------------------------------------------- 
針對git push的時候報錯(解決上傳到github報錯)
Successfully created project 'XXXX' on GitHub, but initial commit failed:
remote: Permission to userA/xxxx.git denied to userB。fatal: unable to access ‘https://github.com/userA/xxxx.git/‘: The requested URL returned error: 403
----------------------------------------------------------------------------------------------------------------------------------------------------- git

當你在使用Idea、VS code 、Android Studio等開發工具 push項目的時候,若是遇到了這個問題:github

   fatal: unable to access 'https://github.com/userA/XXXX.git/': The requested URL returned error: 403shell

問題的表面緣由?

報了403,說明訪問被拒絕。 
切換到終端(Terminal),使用命令 git push -u origin master 後,錯誤顯示到下方了:bash

remote: Permission to userA/repo.git denied to userB.
fatal: unable to access 'https://github.com/userA/XXXX.git/': The requested URL returned error: 403

 

問題分析

意思很明顯,就是說userB沒有權限對userA的XXXX倉庫進行push更改。 app

  •  A) 能夠經過shell命令(打開Git Bash程序)輸入  cat ~/.gitconfig ,得知當前的用戶爲userB。
  • B) 也能夠


這時你早已經使用以下命令去配置過全局用戶:工具

git config --global user.name "userA" git config --global user.email "userA@Email.com"

 而且很明確當前用戶已是userA,但仍是說userB沒權限。
那麼到底是什麼緣由呢? 
因爲該電腦使用git bash配過SSH,系統已經將指向github.com的用戶設置爲了userB,每次push操做的時候,都將讀取到userB的用戶信息,相似於記住密碼。post

 

如何解決? 

三種方案:
一、對userA生成SSH公鑰,添加到userB的github後臺; 
二、將userB添加爲userA項目的contributer; 
三、移除計算機中的userB。開發工具

對於1和2,相信不少人不想這麼作,由於一旦使用了SSH,之後的全部clone、pull、push等操做都將使用SSH傳輸,對以往使用過https傳輸的項目也得從新更改傳輸方式,這樣會浪費一些時間。

如今詳細講下方案3,操做很簡單:

打開 控制面板–>用戶帳戶–>憑據管理器–>管理Windows憑據(或者在開始菜單中搜索 【憑據管理器】)


打開憑據管理器後,下拉在普通憑證,展開這條github.com相關的憑據,直接刪除 或者 點編輯修改,再拉取或者提交的時候會讓咱們從新輸入用戶名密碼 。


好了,問題解決,如今去各種Studio開發平臺 從新push上傳代碼到GitHub,要求你輸入userA的郵箱和密碼,輸入後就能夠成功提交了。

最後查看從新生成了一個證書,而且未指定用戶。
--------------------- 

參考文獻:

1. I-T梟   https://blog.csdn.net/hahahhahahahha123456/article/details/81104977

2. 神話2009 https://blog.csdn.net/klxh2009/article/details/76019742 

·

 

·

相關文章
相關標籤/搜索