GitHub 使用者驗證錯誤處理小記
大概一段時間沒有 git commit 到 GitHub 了, 之前的 commit 都是 commit 到自己維護的 GitLab
今天因為要把 openSUSE Leap 15.3 的 Dockerfile push 到 GitHub 上面遇到 使用者驗證錯誤
訊息如下
> git push origin master:master
remote: No anonymous write access.
fatal: Authentication failed for 'https://github.com/sakanamax/SA_dockerReading.git/'
看了網路上的說法, 參考
https://estella00911.coderbridge.io/2021/08/23/GitHub-token-2021/
2021/8/13 以後 password 方式已經移除, 可能要使用private token 的方式來處理
在使用 GitHub 在 push 的時候, remote 的部份常用的方式有 HTTPS 以及 SSH 方式, 查了自己的 remote 方式是使用 HTTPS 的方式, 然後暫時不想用 Private token 的方式, 所以就把腦筋轉向的 SSH 方式
參考官方網頁說明
確認 remote 的相關資訊
> git remote -v
origin https://github.com/sakanamax/SA_dockerReading.git (fetch)
origin https://github.com/sakanamax/SA_dockerReading.git (push)
wtkuo5745 https://github.com/wtkuo5745/sa_dockerreading (fetch)
wtkuo5745 https://github.com/wtkuo5745/sa_dockerreading (push)
這邊可以觀察到目前是使用 HTTPS 的方式
現在要改用 SSH 的方式
首先登入到 GitHub 網站 新增自己的 SSH Key
在 Settings -- > SSH and GPG Keys -- > New SSH Key
Title 就自己訂定, 例如那邊的電腦的 Key
Key 的內容可以用 ~/.ssh/id_rsa.pub
接下來就是要將 HTTPS 換成 SSH 方式了
我這邊是用先 移除 remove 然後再新增的方式
> git remote remove origin
> git remote add origin git@github.com:sakanamax/SA_dockerReading.git
但是應該也可以用官方網站上的方式, 直接替換掉, 就不用 remove
> git remote set-url origin git@github.com:sakanamax/SA_dockerReading.git
再嘗試一次 > git push -u origin master 就沒有問題了
先紀錄下來
~ enjoy it
Reference:
https://estella00911.coderbridge.io/2021/08/23/GitHub-token-2021/
https://docs.github.com/en/get-started/getting-started-with-git/managing-remote-repositories
沒有留言:
張貼留言