git --version #验证git是否安装成功,输出版本号就代表安装成功
安装完成有配置一下全局的用户名和邮箱,输入如下命令:
git config --global user.name "自定义用户名"
git config --global user.email "邮箱"
使用如下命令可以取消全局设置:
git config --global --unset user.name
git config --global --unset user.email
可以使用如下命令查看当前的全局变量:
git config --global --list
问题说明
当有多个git账号的时候,比如一个github,用于自己进行一些开发活动,再来一个gitlab,一般是公司内部的git。这两者你的邮箱如果不同的话,就会涉及到一个问题,生成第二个git的key的时候会覆盖第一个的key,导致必然有一个用不了。
解决方法
我们可以在【~/.ssh】目录下新建一个config文件配置一下,就可以解决问题
具体步骤:
ssh-keygen -t rsa -C "yourmail@glanway.com"
在输入文件名及路径的时候,生成的密钥命名为【id_rsa_gitlab】,下面连续回车,没有给密钥设置密码(看个人需求)
ssh-keygen -t rsa -C "yourmail@qq.com"
生成后的文件如下图:
ssh-agent就是一个密钥管理器,运行ssh-agent以后,使用ssh-add将私钥交给ssh-agent保管,其他程序需要身份验证的时候可以将验证申请交给ssh-agent来完成整个认证过程
ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_gitlab
在执行上面的添加私钥命令时,如果出现如下错误:
解决方法如下:
ps aux | grep ssh
kill -9 线程号
exec ssh-agent bash
eval ssh-agent -s
ssh-add ./id_rsa_github
ssh-add ./id_rsa_gitlab
创建config文件,将文件创建在【.ssh】目录下
①在windows下新建一个txt文本,然后将名字改成config(包括.txt后缀)
②在git bash下,直接touch config即可创建一个config文件
编辑config文件,修改如下内容:
# gitlab
Host gitool.glanway.com
HostName gitool.glanway.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitlab
User mingyue
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github
User mingyue
配置文件说明:
每个账号单独配置一个Host
,每个Host
要取一个别名,每个Host
主要配置HostName
和IdentityFile
两个属性即可
Host
的名字可以取为自己喜欢的名字,不过这个会影响git相关命令
例如:
Host mygithub
这样定义的话,命令如下,即git@
后面紧跟的名字改为mygithub
git clone git@mygithub:PopFisher/AndroidRotateAnim.git
就相当于你配置的HostName
真正的域名,映射成了Host
后面的配置的名字
HostName #这个是真实的域名地址
IdentityFile #这里是id_rsa的地址
PreferredAuthentications #配置登录时用什么权限认证--可设置publickey,password publickey,keyboard-interactive等
User #配置使用用户名
【注意】不要在配置文件中添加下面这样的注释
这种注释在读取该配置文件时会导致报错,不被识别
HostName git.glanway.com //这里填你们公司的git网址即可
输入如下命令,
ssh-keygen -t rsa -C "yourmail@xxxl.com"
生成单个SSH Key时可以连续回车,不输入密钥文件名字和密码:
生成后会在【C:\Users\用户名.ssh】下产生两个文件,如图:
输入如下代码,见到下图即配置成功
ssh -T git@github.com
ssh -T git@gitool.glanway.com
转载自:https://www.cnblogs.com/Gent-Wang/p/7422433.html
原文:https://www.cnblogs.com/mingyue5826/p/11141324.html