星期日, 12月 05, 2021

GitHub 使用者驗證錯誤處理小記

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/'


看了網路上的說法, 參考


在使用 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:


 


沒有留言: