git设置 sshkey
时间: 2025-01-13 19:49:16 浏览: 48
### 设置Git中的SSH密钥
对于在Git中配置SSH密钥的过程,当使用Windows操作系统时,默认情况下Git会利用随其分发的ssh二进制文件。然而,这可能导致Git无法识别由Windows自带的服务管理器启动的`ssh-agent`服务[^1]。
为了使Git能够访问系统的OpenSSH路径并正确地与`ssh-agent`交互,在环境变量中设定`GIT_SSH`为系统OpenSSH可执行文件的位置是一个解决方案。不过,更现代的方法是在`.gitconfig`文件里通过设置`core.sshCommand`来指定使用的SSH命令,这种方法自Git版本2.10起被支持[^3]。
#### 配置特定于仓库的SSH Key
如果希望针对不同的远程服务器使用不同SSH密钥,则可以在本地Git仓库目录下的`.git/config`文件内定义:
```bash
[remote "origin"]
url = [email protected]:user/repo.git
sshCommand = ssh -i ~/.ssh/id_rsa_custom_key
```
上述配置使得每次向名为`origin`的远端推送或拉取数据时都会自动采用指定位置(`~/.ssh/id_rsa_custom_key`)的私钥进行身份验证。
#### 创建新的SSH密钥对用于GitHub(CentOS为例)
考虑到可能已经在CentOS客户端机器上存在一对SSH密钥,创建新密钥可能会覆盖旧有的密钥对。因此建议先检查现有密钥是否存在,通常位于用户的家目录下`.ssh/`子目录中[^4]。
若需生成一个新的SSH密钥对而不影响现有的任何密钥,可以运行如下命令,并按照提示操作:
```bash
ssh-keygen -t rsa -b 4096 -C "[email protected]"
```
此过程允许指定保存新密钥的具体位置以及为其提供额外的安全保护措施如密码短语。
完成之后,还需要将公钥添加到目标平台(比如GitHub),以便建立信任关系,从而实现无密码克隆、提交等功能。
阅读全文
相关推荐


















