我們可能會需要在一臺電腦上以不同的github賬戶去使用git汤徽,這時(shí)就需要去解決如何管理本機(jī)上的多個(gè)ssh key的問題了点楼。
生成新ssh key
如果我們電腦上已經(jīng)存在了一個(gè)ssh key聋袋,那么我們需要在我們電腦上生成第二個(gè)你想在本電腦上使用的id_rsa刃跛,使用命令:ssh-keygen -t rsa -C "你的github注冊郵箱"蚂蕴。
紅色標(biāo)注部分會提示你把新生成的id_rsa存放到哪里谨设,此處默認(rèn)會存放在c盤的用戶名下的.ssh文件夾下(即你第一個(gè)github用戶ssh key存放的目錄)熟掂,因此我們需要輸入路徑/c/Users/DodoMonster/.ssh(注意此路徑是你的系統(tǒng)盤下用戶目錄安放ssh密鑰的目錄,請使用自己電腦上相對應(yīng)的目錄)扎拣,最后我以“id_rsa_me”重新命名了ssh key防止默認(rèn)與已有的ssh key重復(fù)赴肚。
在輸入了路徑后,會提示你輸入提交項(xiàng)目時(shí)輸入的驗(yàn)證密碼二蓝,不輸則表示不用密碼誉券,這是為了防止別人隨便在你的項(xiàng)目上push東西,所以最好還是輸入以下你的密碼侣夷『崤螅回車,再重復(fù)輸入確認(rèn)回車即可百拓。
添加新ssh key
默認(rèn)SSH只會讀取id_rsa琴锭,所以為了讓SSH識別新的私鑰,需要將其添加到SSH agent
使用命令:ssh-add ~/.ssh/id_rsa_me
如果報(bào)錯(cuò):Could not open a connection to your authentication agent.無法連接到ssh agent
可執(zhí)行ssh-agent bash命令后再執(zhí)行ssh-add命
配置config文件
查看.ssh文件中是否存在config文件
如果已存在則直接編輯config文件衙传,命令:vim config#這是linux的命令决帖,進(jìn)入了vim界面后按a或i或A或I進(jìn)入編輯模式,編輯完成后按esc鍵輸入:wq保存文件退出
如果不存在則需要創(chuàng)建config文件蓖捶,命令:touch config地回,再對config文件進(jìn)行編輯
對config文件進(jìn)行配置填寫:
#Defaultgithubuser(DodoMonster@email.com)-這其實(shí)是注釋Hostdodo#把默認(rèn)的常用的githubHost設(shè)為github.com較好HostNamegithub.comPreferredAuthenticationspublickeyIdentityFile~/.ssh/id_rsa_me#seconduser(monster@qq.com)HostmonsterHostNamegithub.comPreferredAuthenticationspublickeyIdentityFile~/.ssh/id_rsa
其中Host 后的名字可以隨意方便自己記憶,但HostName必須為github.com俊鱼。
測試是否配置成功
使用命令:
ssh-T git@github.comssh -T git@dodo
出現(xiàn)如圖的歡迎語則為配置成功刻像。
注意:配置完成后,在連接Host不是github.com的github倉庫時(shí)并闲,遠(yuǎn)程庫的地址要對應(yīng)地做一些修改细睡,比如現(xiàn)在添加monster帳號下的一個(gè)倉庫orderTicket,則需要使用如下命令這樣添加:
git remoteaddtestgit@dodo:monster/orderTicket.git
而并非原來的git@github.com:monster/orderTicket.git
這樣每次連接都會使用id_rsa與服務(wù)器進(jìn)行連接帝火。
配置至此溜徙,大功告成湃缎!