工作需要,在bitbucket上存在多個git帳號;
需要在本地配置多個公鑰信息,用于不同git帳號的使用,于是總結下操作步驟;
1.生成第2個或者第N個公鑰;
//不要一路回車,要記得取名字不然會覆蓋原來的值
> ssh-keygen -t rsa -C "xiaozhihsu@xxx.com"
出現ssh_key存儲地址
//輸入地址文件
> /users/xuyanping/.ssh/test_id_rsa
ssh_key就會保存到相對文件下,目錄下會生成test_id_rsa,test_id_rsa.pub兩個文件;
2.創建config文件
vim ~/.ssh/config
輸入配置信息:
Host test.bitbucket.org
HostName bitbucket.org
User git
IdentityFile ~/.ssh/test_id_rsa
StrictHostKeyChecking no
UserKnownHostsFile=/dev/null
LogLevel=quiet
3.完成,到bitbucket上配置公鑰吧~
4.如果使用ssh key在git clone 的時候沒有權限,可能是因為ssh key list上沒有加載剛剛配置的rsa
//查看當前rsa list
ssh-add -l
//如果列表中沒有新增的rsa, 添加identifile
ssh-add ~/.ssh/test_id_rsa
現在再去試試看吧~,我已經成功git clone 下來了啦~~
補充:在github上的多個帳號提交,因為之前我設置了全局的用戶名和郵箱,于是出現無論ssh key如何設置
提交人的帳號都是我原先設置的全局用戶用命,要在多個賬戶之前切換提交,如下:
# 取消全局原先使用的 用戶名/郵箱 配置
git config --global --unset user.name
git config --global --unset user.email
# 設置單獨項目的用戶名和帳號
cd $repository_path/
git config user.email 'xxxx@xx.com'
git config user.name 'xxxx'