主页 > 软件开发  > 

git配置多个SSHkey

git配置多个SSHkey
1. 生成新的ssh key

执行下方命令,在选择文件地址及文件名时,不要使用默认值,填写自定义的密钥路径名称,比如:github_work、github_personal等

ssh-keygen -t rsa -C "<邮箱>" Generating public/private rsa key pair. Enter file in which to save the key (~/.ssh/id_rsa):<为了区分多个key,需要填写自定义的名称> 2. 配置~/.ssh/config

如果没有则新建

# work Host codeup_work HostName codeup.aliyun IdentityFile ~/.ssh/codeup_work PreferredAuthentications publickey IdentityAgent none IdentitiesOnly yes User xiaoming # personal # 通配符表示可用于多个server Host * IdentityFile ~/.ssh/id_rsa PreferredAuthentications publickey IdentityAgent none IdentitiesOnly yes User xiaohong

配置说明:

Host:别名PreferredAuthentications:指定SSH客户端尝试认证方法的优先顺序 publickey:使用SSH密钥对认证keyboard-interactive:交互式键盘认证(通常是密码提示)password:密码认证gssapi-with-mic:基于GSSAPI的认证(如Kerberos) IdentityAgent:指定用于存储和管理SSH密钥的代理程序,none为禁用代理IdentitiesOnly:控制SSH是否只使用在配置文件中通过IdentityFile明确指定的密钥。 no:默认值,SSH会尝试所有可用的密钥,包括SSH代理中的密钥。yes:当有多个SSH密钥,并且想确保SSH只使用为特定主机明确指定的密钥时非常有用。这可以防止SSH尝试使用不相关的密钥,从而避免因尝试太多密钥而被服务器拒绝连接。 User:指定连接到远程主机时使用的用户名。如果不想每次都在命令行中指定用户名(如ssh username@hostname),可以在配置文件中设置默认用户名。对于git,用户名通常是git。 3. 使用

在仓库服务器中设置相应的ssh key,即可使用。

当克隆仓库时:

# work仓库 git clone git@codeup_work:username/repo.git # 其他仓库正常使用 git clone git@xx:xx/repo.git

对于现有仓库,需要更改remote:

# work git remote set-url origin git@codeup_work:username/repo.git #其他仓库不用修改
标签:

git配置多个SSHkey由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“git配置多个SSHkey