乐趣区

githubgitee创建连接克隆远程仓库及生成配置SSH公钥

1、安装 git、注册 guthub 账号、注册码云账号,此过程不再赘述

2、在 github 和码云分别创建一个仓库,用于测试

2.1、github 操作:

2.1.1、点击头像左侧加号,展开后选择 New repository(新建仓库)

2.1.2、填写仓库名称、描述、选择仓库类型(一般选择公开,私密的需要收费)、勾选 readme, 最后点击生成仓库

2.1.3、点击创建后,生成仓库如下所示,只有一个 readme 文件

2.1.4、将远程仓库克隆到本地

方法一:使用 HTTPS 方式,该方式就像下载东西一样,有一个 HTTPS 地址就可以

如上图所示,就是 HTTPS 地址
在本地电脑新建一个文件夹

进入文件夹内,右键选择 Git Bush Here

然后就会自动打开 git 命令窗口

在窗口内输入命令 git clone“HTTPS 地址”,然后敲回车键
注意:请保证的远程仓库类型为 public, 否则这里需要输入你的 github 账号和密码


出现上面的界面,则表示克隆成功,回到本地电脑刚才的目录


可以看到,本地的文件夹内多了一个 clone-test 文件夹,且该文件夹内部与远程仓库一模一样

方法二:使用 SSH 方式,这里就要需要 SSH 地址了

可以发现,SSH 的地址与 HTTPS 不一样
我们回到本地电脑上新建的文件夹内,删除刚才克隆下来的仓库,然后重复上面的步骤,只是将 HTTPS 地址换成 SSH 地址

The authenticity of host ‘github.com (192.30.*.112)’ can’t be established.
有道翻译:主机‘github.com(192.30.XXX.112)’的真实性无法确定。
Are you sure you want to continue connecting (yes/no)?
有道翻译:你确定要继续链接吗?

输入 yes 回车

Could not read from remote repository.
有道翻译:无法从远程存储库读取。
Please make sure you have the correct access rights and the repository exists.
有道翻译:请确保您拥有正确的访问权限和存储库存在。

看这样不行,我们需要配置 SSH
首先生成 SSH 公钥和密钥,进入如下路径,一般在 C 盘用户目录下,红色部分为你的电脑用户名

右键GIt Bush Here,输入命令ssh-keygen -t rsa -C "你的 email 地址" -f "自定义的密钥文件名"


代码参数含义:
- t 指定密钥类型,默认是 rsa,可以省略。
- C 设置注释文字,随便写,比如邮箱。
- f 指定密钥文件存储文件名。
如果省略 - f 参数,运行上面那条命令后会让你输入一个文件名,用于保存刚才生成的 SSH key 代码,如:
Generating public/private rsa key pair.
Enter file in which to save the key (/c/Users/you/.ssh/id_rsa): [Press enter]
当然,你也可以不输入文件名,使用默认文件名(推荐),那么就会生成 id_rsa 和 id_rsa.pub 两个秘钥文件。
接着又会提示你输入两次密码(该密码是你 push 文件的时候要输入的密码,而不是 github 管理者的密码 ),当然,你也可以不输入密码,直接按回车。那么 push 的时候就不需要输入密码,直接提交到 Git 服务器上了,如:
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
接下来,就会显示如下一些提示,如:

Your identification has been saved in /c/Users/you/.ssh/id_rsa.
Your public key has been saved in /c/Users/you/.ssh/id_rsa.pub.
The key fingerprint is:
01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db 你的 email 地址
当你在 Git Bash 上看到这段显示的时候,那就说明,你的 SSH key 已经创建成功,你只需要添加到 Git 服务器上的 SSH key 上就可以了

点击头像,展开后选择Setting



找到生成的公钥文件,打开后复制里面的所有内容,粘贴到 github 的 Key 里面



现在我们再次尝试 clone 远程仓库

我们发现还是不行,那我们测试下一喀巴能不能连通 github,` ssh -T git@github.com
`

还是不行,那我们查看一下具体信息,到底哪里出了问题 ssh -T -v git@github.com

可以看到它一直在查找这几个文件,id_rsaid_dsa 这是默认的公钥和密钥文件名,而我在生成的时候重新命名了公钥和密钥的名称,所以它找不到了,那我们我们就需要配置一下告诉他该去找哪个文件
我们在 ssh 文件夹下执行touch config, 生成一个 config 文件,在后在文件内写入

现在再次尝试链接

链接成功
我们再次尝试 clone 远程仓库


至此,大功告成

码云操作与 github 基本相同,注意的是,要再生成一份密钥和公钥,并且需要配置 config 文件

退出移动版