快轉到主要內容

Linux無法clone自己的Github repository的解決方法

· 民國112年癸卯年
·
切換繁體/簡體 ·
分類 Linux系統 Linux使用技巧
標籤 Github Linux OpenSSH

Github現在不能用HTTPS來clone自己的儲存庫(repository)了,也無法pull和push。

Github官方說要改用SSH連結clone,也就是在clone儲存庫的時候要點選右上角,使用Code裡面的SSH選項:

在那之前必須設定SSH金鑰才能clone自己的儲存庫。若在設定SSH金鑰前直接clone的話,會遇到以下錯誤:git@github.com: Permission denied (publickey)或是fatal: 無法讀取遠端版本庫。請確認您有正確的存取權限並且版本庫存在。

因此每一台電腦clone自己的儲存庫前都要先產生SSH金鑰。

參考官方文件:Adding a new SSH key to your GitHub account

Linux系統的具體步驟如下:

  1. 安裝OpenSSH和Git套件,例如Ubuntu為:
sudo apt install openssh-client openssh-server git
  1. 設定全域本機聯絡資訊
git config --global user.name "名字"
git config --global user.email "電郵"
  1. 於本機生成ED25519演算法的SSH金鑰,此金鑰是要跟Github配對用的,按Enter產生。Linux產生的SSH金鑰檔案位於~/.ssh/id_rsa.pub
ssh-keygen -t ed25519 -C "電郵" -f ~/.ssh/id_ed25519
  1. 使用cat指令查看SSH金鑰內容,將其全部複製下來。
cat ~/.ssh/id_ed25519.pub
  1. 至Github點選右上角大頭貼 → Settings,再點選左邊的 SSH and GPG keys

  2. 點選綠色的New SSH key。

  3. 在Title欄位給此金鑰取個名字,再將SSH金鑰檔案的內容貼到Key的欄位,按下Add SSH Key。

  4. 設定好之後就能用SSH來clone儲存庫,push與pull也能正常使用了。

相關文章


感謝您的閱讀。我寫作是為了誠實表達想法,而不是追逐社群互動與流量。我很樂意傾聽你在仔細閱讀我文章之後的心得。若有內容勘誤 or 技術問題 or 回饋想法,歡迎透過本站「關於」頁面的Email與我聯絡。