天天看點

github ssh git使用指定的ssh檔案名

要求:閱讀本博文需要你有git、ssh、rsa相關知識

針對人群:本博文主要為想要使用自己指定的ssh-key檔案名進行git操作提供一種方法。不自己指定而是使用預設的檔案名不需要看此教程,因為那個沒這麼費勁。

  1. 以管理者身份運作powershell
  2. 使用你的github賬号郵箱生成一個ssh key
    # -t:指明你要使用的加密算法;-C:指明你的GitHub登入郵箱;-f:指明你想讓你生成的密鑰檔案放在哪裡。執行指令後,會生成兩個檔案,私鑰的名字就是你指令中寫的名字,公鑰的名字比私鑰的名字多了.pub字尾
    ssh-keygen -t ed25519 -C "[email protected]" -f "你想讓github ssh key存放的路徑"
               
    github ssh git使用指定的ssh檔案名
  3. 檢視是否設定ssh-agent,如下圖情況則為ssh-agent未運作
    # -l:列出你目前所有的添加到ssh-agent的ssh情況
    ssh-add -l
               
    github ssh git使用指定的ssh檔案名
  4. 運作ssh-agent
    # 設定ssh-agent自動啟動
     Set-Service ssh-agent -StartupType Automatic
     # 啟動ssh-agent
     Start-Service ssh-agent
     # 擷取目前正在運作的ssh-agent資訊
     Get-Service ssh-agent
               
    github ssh git使用指定的ssh檔案名
  5. 将你的github ssh key添加到ssh agent
    # ssh-add 後面跟的是你剛才産生的密鑰存放的位置,這裡說的是私鑰所在的檔案(不明白就去百度RSA算法)
    ssh-add "C:\Users\mayu3\.ssh\id_rsa-remote-ssh-github"
               
    github ssh git使用指定的ssh檔案名
  6. 複制你的github ssh key的私鑰到剪貼闆
    # 這行指令實作将将你的公鑰複制到剪貼闆
    Get-Content C:\Users\mayu3\.ssh\id_rsa-remote-ssh-github.pub | Set-Clipboard
               
    github ssh git使用指定的ssh檔案名
  7. 登入你的GitHub賬戶,添加ssh key的公鑰
    github ssh git使用指定的ssh檔案名
  8. 點選New SSH key
    github ssh git使用指定的ssh檔案名
  9. 填寫Title和Key
    github ssh git使用指定的ssh檔案名
  10. 添加後的效果
    github ssh git使用指定的ssh檔案名
  11. 編輯

    ~/.ssh/config

    檔案添加以下内容

    此處還有其他方法,此方法是使用較廣的一種,其他的方法,可以點此連結跳轉:傳送門,還沒寫,先占位,後面填坑

    Host github.com
        Hostname        github.com
        # 我的私鑰路徑是:~/.ssh/id_rsa-remote-ssh-github,這裡改為你自己的私鑰路徑
        IdentityFile    ~/.ssh/id_rsa-remote-ssh-github
        IdentitiesOnly yes
               
    github ssh git使用指定的ssh檔案名
  12. 添加remote
    # notessh 是你為remote起的别名,随便起
    # [email protected]:sober-orange/mynote.git 是你的倉庫ssh連結
    git remote add notessh [email protected]:sober-orange/mynote.git
               
    github ssh git使用指定的ssh檔案名
  13. 送出代碼
    # 以下兩行指令等價
    # 我這裡主分支是main,是因為我把原來的主分支名:master改了。不明白我說的說明你git還沒學
    git push --set-upstream notessh main
    git push -u notessh main
               
    github ssh git使用指定的ssh檔案名

參考文獻

https://www.163.com/dy/article/GHCG1C5B0511DSSR.html