关于git操作
查看本地是否已有SSH
在本地打开 git bash 命令行窗口,输入以下命令
cd ~/.ssh
如果没有,显示
bash: cd: /c/Users/Administrator/.ssh: No such file or directory
否则表示本地以创建 SSH key 了
1
2
3cd ~/.ssh
ls
id_rsa id_rsa.pub known_hosts
创建 SSH key
- 最后一个参数替换为自己的 Gitee || Github 注册邮箱
1
2ssh-keygen -t rsa -C "your_email@example.com"
Generating public/private rsa key pair. - 接下来会提示输入生成的key存放的路径,不设置直接回车的话会默认创建在C:/Users/你的用户账号/.ssh文件夹下
1
2Enter file in which to save the key (/c/Users/Him/.ssh/id_rsa):
Created directory '/c/Users/userpath/.ssh'. - 再接下来会提示你输入密码,这个密码是用来每次提交的时候输入确认,可以不设置,直接回车两次
1
2Enter passphrase (empty for no passphrase):
Enter same passphrase again: - 最后成功后会看到类似如下的输出,表示成功生成SSH key了,可以到C:/Users/你的用户账号/.ssh文件夹下查看
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16Your identification has been saved in /c/Users/Him/.ssh/id_rsa.
Your public key has been saved in /c/Users/Him/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:RwvBINgH8CEt2KniltmykeyDsOseUYcwMzehFeyT86s xxxxxx@qq.com
The key's randomart image is:
+---[RSA 2048]----+
| o+%OO+o. |
|..=+%*+ .. |
| ..+o+o.. . |
|o. o=. o . |
|o oolalala S o |
| +.+.. . . |
|. .o . |
| . . . |
| . E. |
+----[SHA256]-----+
SSH验证
验证本地生成的ssh,github或者gitee端密钥是否添加成功,输入如下命令
1
2ssh -T git@github.com
ssh -T git@gitee.com如果添加成功就会显示如下语句
Hi Username! You’ve successfully authenticated, but GitHub does not provide shell access.
Hi Username! You’ve successfully authenticated, but GITEE.COM does not provide shell access.Username:是你的在git端的名称
同一台电脑上多个github或gitee账户
同一台电脑有两个github账号或者两个gitee账号,配置如下都相同
- 请参考:gitee文档 配置文件如下
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23# gitee xxxxxx@qq.com
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/giteeqq_id_rsa
# gitee xxxxxxx@189.cn
Host xxxx.gitee.com #此处xxxx需要修改为你的gitee名称
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee189_id_rsa
# github aaaaa@189.cn
Host aaaaa.github.com #此处aaaaa需要修改为你的github名称
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github189_id_rsa
# github xxxx@qq.com
#Host xxxx.github.com #此处xxxx需要修改为你的github名称
#HostName github.com
#PreferredAuthentications publickey
#IdentityFile ~/.ssh/id_rsa - 文件中有多个
xxx
或aaaaa
都是需要修改处,如果需要验证添加SSH是否成功,测试代码如下,对应上面配置文件依此类推有多少个gitee或github就配置多少个,特别注意 xxxx_id_rsa 不能配置为相同文件名。1
2
3
4ssh -T git@gitee.com
ssh -T git@xxxx.gitee.com
ssh -T git@aaaaa.github.com
ssh -T git@xxxx.github.com
git 问题
GitHub Desktop 使用ssh推送或者下拉时候报错 Authentication failed. Some common reasons include:
- 可以尝试关闭路径
File
->Options
->Advanced
->SSH的选项
->Use system OpenSSH 选项