window下配置SSH连接GitHub、GitHub配置ssh key

本文介绍如何在Windows环境下使用msysGit配置SSH Keys连接GitHub,并演示如何将本地项目通过SSH提交到GitHub仓库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

原文地址:http://www.cnblogs.com/hukai46/p/5489631.html

此经验分两部分:

第一部分介绍:在windows下通过msysGit(Git for windows、Git Bash)配置SSH Keys连接GitHub。

第二部分介绍:在GitHub上创建仓库,在本地创建项目,然后将本地项目通过SSH提交到GitHub仓库中。

工具/原料

  • GitHub
  • msysGit(git for windows、Git Bash)

msysGit配置SSH访问GitHub

  1. 1

    检查本机是否有ssh key设置

    $ cd ~/.ssh 或cd .ssh

    如果没有则提示: No such file or directory

    如果有则进入~/.ssh路径下(ls查看当前路径文件,rm * 删除所有文件)

  2. 2

    1、使用Git Bash生成新的ssh key。

    $ cd ~  #保证当前路径在”~”下

    $ ssh-keygen -t rsa -C "xxxxxx@yy.com"  #建议填写自己真实有效的邮箱地址

    Generating public/private rsa key pair.

    Enter file in which to save the key (/c/Users/xxxx_000/.ssh/id_rsa):   #不填直接回车

    Enter passphrase (empty for no passphrase):   #输入密码(可以为空)

    Enter same passphrase again:   #再次确认密码(可以为空)

    Your identification has been saved in /c/Users/xxxx_000/.ssh/id_rsa.   #生成的密钥

    Your public key has been saved in /c/Users/xxxx_000/.ssh/id_rsa.pub.  #生成的公钥

    The key fingerprint is:

    e3:51:33:xx:xx:xx:xx:xxx:61:28:83:e2:81 xxxxxx@yy.com

     

    *本机已完成ssh key设置,其存放路径为:c:/Users/xxxx_000/.ssh/下。

    注释:可生成ssh key自定义名称的密钥,默认id_rsa。

    $ ssh-keygen -t rsa -C "邮箱地址" -f ~/.ssh/githug_blog_keys #生成ssh key的名称为githug_blog_keys,慎用容易出现其它异常。

  3. 3

    添加ssh key到GItHub

    3.1 登录GitHub系统;点击右上角账号头像的“▼”→Settings→SSH kyes→Add SSH key。

  4. 4

    3.2 复制id_rsa.pub的公钥内容。 

    1) 进入c:/Users/xxxx_000/.ssh/目录下,打开id_rsa.pub文件,全选复制公钥内容。

    2) Title自定义,将公钥粘贴到GitHub中Add an SSH key的key输入框,最后“Add Key”。

  5. 5

    配置账户

    $ git config --global user.name “your_username”  #设置用户名

    $ git config --global user.email “your_registered_github_Email”  #设置邮箱地址(建议用注册giuhub的邮箱)

  6. 6

    测试ssh keys是否设置成功。

    $ ssh -T git@github.com

    The authenticity of host 'github.com (192.30.252.129)' can't be established.

    RSA key fingerprint is 16:27:xx:xx:xx:xx:xx:4d:eb:df:a6:48.

    Are you sure you want to continue connecting (yes/no)? yes #确认你是否继续联系,输入yes

    Warning: Permanently added 'github.com,192.30.252.129' (RSA) to the list of known hosts.

    Enter passphrase for key '/c/Users/xxxx_000/.ssh/id_rsa':  #生成ssh kye是密码为空则无此项,若设置有密码则有此项且,输入生成ssh key时设置的密码即可。

    Hi xxx! You've successfully authenticated, but GitHub does not provide shell access. #出现词句话,说明设置成功。

    END

将本地项目通过SSH push到GitHub

  1.  

    在github上创建一个示例仓库,如:test ssh key。

  2.  

    复制test ssh key的ssh路径。

  3.  

    本地创建项目 

    1) 创建目录

    $ mkdir test

    $ cd test

    2) 初始化

    $ git init

    3) 创建hello.md文件

    $ echo "这是一次测试test ssh key" > hello.md

    4) 提交到本地

    若出现如上warning提示则重新提交一次即可。

    $ git add .   #提交当前目录下所以文件

    $ git commit -m "add hello.md"   #提交记录说明 

    5) 提交到github

    $ git remote add origin ‘粘贴复制test ssh key的ssh路径’  #

    $ git push -u origin master

    Enter passphrase for key '/c/Users/hgpin_000/.ssh/id_rsa':  #ssh key设置密码故此需要输入密码

  4. 4

    刷新test ssh key仓库,查看hello.md。(完)

    END

注意事项

  • 经验适用于win7、win8.1、win10。
<think>好的,我现在需要帮助用户解决在Windows 11上生成SSH密钥并添加到Git账户的问题。首先,我得回忆一下相关的步骤,确保自己理解正确。 用户的需求很明确:生成SSH密钥,然后配置Git。根据之前提供的引用内容,特别是引用[1]和[2],里面提到了在Windows上生成密钥对以及添加到SSH-agent的步骤。首先,用户可能需要打开Git Bash,因为这是Windows下常用的工具。然后,使用ssh-keygen命令生成密钥,这里要注意保存路径和密码的设置。默认路径是用户目录下的.ssh文件夹,文件名一般是id_rsa。如果用户之前已经生成过密钥,可能会覆盖,所以需要提示用户检查是否存在现有密钥,如引用[4]提到的用cat命令查看。 生成密钥后,下一步是启动ssh-agent,并将私钥添加进去。这里可能需要用eval命令启动ssh-agent,然后ssh-add添加私钥。有时候用户可能会遇到ssh-agent未运行的情况,这时候需要手动启动服务,比如在PowerShell中执行Start-Service ssh-agent,或者设置服务为自动启动,如引用[2]中的步骤。 接下来是添加公钥到Git账户,比如GitHubGitLab。用户需要复制id_rsa.pub的内容,然后登录到Git账户的设置页面,添加新的SSH key。这部分需要指导用户如何正确复制公钥内容,避免多余的空格或换行符。引用[3]和[4]提到这一点,确保用户能正确上传。 最后,测试连接是否成功,使用ssh -T命令验证。如果出现权限问题,可能需要调整.ssh目录的权限为700,密钥文件为600,这可以避免常见的问题,如引用[4]中的权限设置。 还需要考虑用户可能的疑问,比如多个密钥的管理,或者遇到连接问题时的解决方法。例如,如果用户有多个Git账户,可能需要配置不同的密钥对,并在config文件中指定。另外,如果测试连接失败,可能需要检查防火墙设置或SSH配置是否正确。 总结步骤应该是清晰的,分点说明,确保用户能一步步跟随操作。同时,注意使用正确的代码块格式,命令要准确,路径要正确。还要提醒用户注意安全,不要泄露私钥,并设置强密码。 可能用户会遇到的问题包括:生成密钥时的路径错误、ssh-agent无法启动、公钥添加错误等,需要在这些步骤中给出明确的指导和注意事项。例如,在生成密钥时,如果用户输入了自定义路径,后续添加密钥到ssh-agent时也要指定正确路径。另外,复制公钥内容时,要使用cat命令或者文本编辑器,确保没有多余字符。 最后,相关问题部分需要覆盖用户可能进一步想知道的内容,比如多账户管理、权限问题解决、密钥类型的选择(如ed25519)等,这样用户如果有其他需求,可以自行参考。</think>### 在 Windows 11 上生成 SSH 密钥并配置Git 账户的步骤 #### 1. 生成 SSH 密钥对 1. 打开 **Git Bash**(需提前安装 [Git for Windows](https://gitforwindows.org/)) 2. 输入以下命令生成密钥: ```bash ssh-keygen -t ed25519 -C "your_email@example.com" ``` - `-t ed25519`:指定密钥类型(推荐使用更安全的 Ed25519 算法,兼容性不足时可改用 `-t rsa`) - `-C "注释"`:用于标识密钥的邮箱或标签 3. 按提示选择密钥保存路径(默认 `C:\Users\<用户名>\.ssh\id_ed25519`),建议直接按回车使用默认路径 4. 设置密钥密码(可选):输入密码保护私钥,增强安全性 #### 2. 将私钥添加到 SSH-agent 1. 启动 SSH-agent 后台服务: ```bash eval "$(ssh-agent -s)" ``` 若失败,可能需要手动启动服务(以管理员权限运行 PowerShell): ```powershell Get-Service ssh-agent | Set-Service -StartupType Automatic Start-Service ssh-agent ``` 2. 添加私钥到 SSH-agent: ```bash ssh-add ~/.ssh/id_ed25519 ``` 若设置了密码,需输入密码验证 #### 3. 添加公钥到 Git 账户(以 GitHub 为例) 1. 复制公钥内容: ```bash cat ~/.ssh/id_ed25519.pub ``` 或通过文件管理器打开 `C:\Users\<用户名>\.ssh\id_ed25519.pub`,复制全部内容 2. 登录 GitHub → Settings → **SSH and GPG keys** → New SSH key - Title:自定义名称(如 "My Windows Key") - Key:粘贴复制的公钥内容(以 `ssh-ed25519` 开头) 3. 点击 **Add SSH key** 完成添加 #### 4. 测试 SSH 连接 ```bash ssh -T git@github.com ``` 若看到 `You've successfully authenticated` 即表示配置成功。 #### 权限问题修复(若测试失败) ```bash chmod 700 ~/.ssh chmod 600 ~/.ssh/id_ed25519* ``` ### 注意事项 - **多账户场景**:可通过创建 `~/.ssh/config` 文件为不同平台配置独立密钥 - **密钥备份**:备份 `.ssh` 目录或导出私钥到安全位置 - **密码重置**:若忘记私钥密码,需重新生成密钥
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值