如何使用git新建多個SSH金鑰進行專案託管

MaJing_CUI發表於2017-08-21

如何使用git新建多個SSH金鑰進行專案託管

在工作中,我們可能會遇到如文章標題這樣的情況,我們在工作中需要使用gitlab進行專案託管,但同時我們又想使用github進行一些自己的專案託管,此時就發現有了衝突,以下會逐步進行操作。

  • 首先開啟github或者gitlab新增SSH金鑰頁面進行準備(github,gitlab新建SSH頁面都大同小異,這裡title可以命名的稍微有辨識度一些)

    SSH新建


  • 開啟Git Bash 進行新建金鑰 鍵入ssh-Keygen -t rsa -C “XXXXX@XXXXX.com” (這裡的郵箱是你的 gitlab 或者 github 賬號郵箱)

    在這個時候需要注意,你是在哪裡點開的Git Bash 因為key是在本地生成的,你在哪裡點開 Git Bash 後面這個key檔案就會在哪裡生成,這裡說明一下方便大家後面去進行查詢。

    SSH金鑰

    如果新增過SSH金鑰的同學應該知道系統預設會起名字為id_rsa, 如果電腦上還沒有SSH金鑰的同學可以直接使用系統預設的名字,如果現在是操作新增第二個的同學需要從新起名字,如github_rsa,gitlab_rsa。那我這裡操作的時候就是提示我的預設名字已經被佔用了需要從新鍵入名字。

    SSH新建完成

    接下來兩行是說你在push程式碼的時候需要的密碼,輸入兩遍,不輸入的話就表示push的時候不需要密碼,我沒有輸入所以是空白,不輸入就直接Enter鍵就可以,出現以上符號就表示新建完畢。

    這個時候需要還在建立第一個金鑰的同學,可以重複上述步驟進入去新建第二個金鑰。


  • 找到.ssh資料夾將新建的檔案複製貼上進來,並新建config檔案

    一般都在C:\Users\你的電腦使用者名稱.ssh 這個資料夾下,開啟這個資料夾你會發現裡面有三個檔案,id_rsa丶id_rsa.pub丶known_hosts ,這裡id_rsa就是第一次預設命名的檔案 這個時候我們要找到第二次新建的時候生成的檔案複製貼上進來(還記得我上面讓大家看好生成的位置吧)

    貼上

    此時新建一個檔案,沒有字尾名,名字叫config

    新建config


  • 編寫config內容

    將一下程式碼複製貼上進去
    Host http://XXXX.cn/
    port XXXX
    IdentityFile /c/Users/Administrator/.ssh/id_rsa

    Host github.com
    IdentityFile /c/Users/Administrator/.ssh/github_rsa

    配置github 或者別的程式碼託管的網站 HOST 後面直接這樣寫即可, IdentityFile 後面跟的是你的github_rsa所在檔案目錄格式需要跟上面的一樣是‘/’這個斜槓

    當你需要配置自己公司的託管專案時 請根據你down程式碼的地址來進行配置,假如地址為,192.132.23.34:8080/XXXXX/XXXX …. HOST對應ip, port對應埠,IdentityFile還是對應檔案目錄,如下:
    Host 192.132.23.34
    port 8080
    IdentityFile /c/Users/Administrator/.ssh/id_rsa

    編寫好後就可以直接儲存了


  • 將金鑰複製準備視窗

    開啟之前,github 或者別的程式碼託管的新建SSH金鑰的準備視窗,找到對應的.pub 檔案全部複製到準備視窗的key中

    金鑰

    點選add key 就可以了 就會顯示已經新增上SSH金鑰了,這樣就完成了可以開始進行程式碼管理日常操作了。

  • 測試

    當然我們做完add key 之後我們可以自行測試,不需要用down程式碼來測試是否成功
    同樣開啟Git Bash 在任何開啟都可以 鍵入 ssh -T git@github.com(@後面跟的是你程式碼託管的域名)
    如果出現 welcome,或者Hi 你的名字 就表示配置成功

    這裡寫圖片描述

    ssh -T 是進行遠端伺服器測試的,如果你們伺服器 沒有域名,要只是IP 也行,但是如果ip 後面還有目錄那麼這個時候 ssh -T 就檢測不到了,只能手動去down程式碼測試。


以上就是我的一點總結,希望對看到的人有幫助

相關文章