git生成密钥

# GIT生成私钥对

1. ## Git配置用户名和邮箱

- 查看git的配置列表

git config --list

如果没有配置东西,应该是空的。照着下面配置完成后,你可以再试一下该命令,就会出现一系列配置信息。

- 进行配置

- ### 命令行配置

> git config --global user.name "username"
> git config --global user.email "email"

将username和email换成github(或者其它类似远程仓库)的用户名和邮箱。

- [ ] 全局变量

**--global** 表示全局的,即当前用户都有效,该配置会出现在 ~/.gitconfig 文件中,~表示当前用户的目录,比如我的是:C:\Users\username\.gitconfig

- [ ] 局部变量

既然有全局的,那么肯定有局部的啊!局部的是不加 --global 的,如下:

git config user.name "username"
git config user.email "email"

**局部是只对当前仓库起效的,它的配置信息会在当前仓库根目录/.git/config文件下:**

![img](https://www.icode9.com/i/ll/?i=2019051116453060.png)

### 注意:局部变量覆盖全局变量!!!和编程语言里面的变量关系是一样的。

- ### 修改已配置的信息

假如配置后,发现有信息配置错了,如何进行修改?

- [ ] 用命令修改

这里演示修改本地仓库的用户名和邮箱:

> git config --replace-all user.name "name"
>
> git config --replace-all user.email "123@qq.com"

修改后是这样的:

![img](https://www.icode9.com/i/ll/?i=2019051117034924.png)

- [ ] 修改对应文件进行修改

2. ## 生成SSH公钥

- ### 使用git生成ssh密钥

1. 打开 Git Bash。

2. 输入 ls -al ~/.ssh 以查看是否存在现有 SSH 密钥:

> $ ls -al ~/.ssh

检查目录列表以查看是否已经有 SSH 公钥。 默认情况下,公钥的文件名是以下之一:

id_rsa.pub id_ecdsa.pub id_ed25519.pub 如果您没有现有的公钥和私钥对,或者不想使用任何可用于连接到
GitHub 的密钥对,则生成新的 SSH 密钥。

3. 没有ssh密钥,创建新的ssh密钥:

> **ssh-keygen -t rsa -C "526861348@qq.com"**
>
> 生成公钥和私钥
> 按3次Enter,
>
> 不需要设置名称与密码
>
> **cat ~/.ssh/id_rsa.pub**
>
> 查看公钥

文件路径是:C:\Users\Administrator\.ssh

![img](https://www.icode9.com/i/l/?n=18&i=blog/1321829/201809/1321829-20180923145000266-126090604.png)

3. ### GitLab添加公钥

![img](https://www.icode9.com/i/l/?n=18&i=blog/1321829/201809/1321829-20180923145952625-1091134478.png)

![img](https://www.icode9.com/i/l/?n=18&i=blog/1321829/201809/1321829-20180923194952152-1504383058.png)

![img](https://www.icode9.com/i/l/?n=18&i=blog/1321829/201809/1321829-20180923150612509-1332309597.png)

> ssh -T git@192.168.1.105

测试配置文件是否正常工作:

![img](https://www.icode9.com/i/l/?n=18&i=blog/1321829/201809/1321829-20180923183407601-1191256033.png)

### 4.使用TortoiseGit来下拉代码配置

- **生成.ppk文件**

如果配置了相关环境变量,么可以直接在**cmd**中打开**puttygen**(也可以到TortoiseGit的安装路径下找到**C:\Program Files\TortoiseGit\bin\puttygen.exe**)

点击下图中规定**load**加载私钥**id_rsa**,然后点击**Save private key**生成TortoiseGit需要使用的ppk文件**(id_rsa.ppk)**

![img](https://www.icode9.com/i/i/?n=15&i=blog/823551/201605/823551-20160506170224560-1357892177.png)

- **配置TortoiseGit客户端**

 打开**TortoiseGit**设置页面,配置相关参数如下:配置用户名和邮箱,配置服务器代码路径和上面得到的**id_rsa.ppk**路径,进入TortoiseGit的**Settings**页面,点击左边导航栏的Git目录,**设置用户名和邮箱(Name, Email)**,Name会在提交代码的时候显示出来,如果之前使用**git config**配置过,这里也可以不用配置的。

​ ![img](https://www.icode9.com/i/i/?n=15&i=blog/823551/201605/823551-20160506171731263-645096017.png)

​ **Putty是id_rsa.ppk文件路径,****至此就可以使用TortoiseGit正常工作了,可以试试pull,commit等功能。**

 

5.**如何在TortoiseGit(pageant)中自动导入ppk文件**

在安装完TortoiseGit,通过PuTTYgen生成完rsa, ppk等文件后,要想pull文件,还得每次在TortoiseGit启动时,在pageant中手动导入ppk文件,很是烦人。

下面就是解决TortoiseGit每次启动时需要手动导入ppk文件的问题。

**方法一:**

1. 进入Git项目的目录,右键空白处,打开“TortoiseGit > Settings”
2. 选中“Git > Remote”
3. 选中正确的origin
4. 在Putty一栏选择正确的ppk文件
5. 点确定

**方法二:**

1. 在“启动”菜单中打开“启动”目录,Windows7一般在C:\Users\hairong\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup
2. 右键空白处,选择新建快捷方式
3. 选择pageant的位置,并按填入ppk的位置,例如"C:\Program Files\TortoiseGit\bin\pageant.exe" C:\Users\hairong\.ssh\id_rsa.ppk
4. 修改快捷方式的名字为“pageant with ppk”,并保存
5. 系统每次启动后就会自动加载ppk了

 

上一篇:java8学习:通过行为参数化传递代码


下一篇:MySQL 基础---数据库安全性机制