本文配置Git需要满足可以从github上获取代码,同时也需要从内网服务器上能进行上传、下载、修改代码。
本地服务器的地址:git@xxx.com
Github地址:git@github.com
- 配置github账号
1.1配置github的用户名和邮箱
git config --global user.email xxx@163.com
git config --global user.name xxx
配置成功后,git config -l 可以查看配置的信息
1.2生成github的秘钥
命令行输入: ssh-keygen -t rsa -C "你的邮箱",连续三次回车,生成秘钥。
秘钥和公钥的路径为:~/.ssh/id_rsa ~/.ssh/id_rsa.pub
1.3在github配置公钥
复制公钥,粘贴到github的公钥列表中。
配置成功后,测试配置是否正确。命令行输入:
ssh git@github.com
如果看到 You've successfully authenticated则配置成功。
- 配置内网服务器git账号
2.1 配置内网服务器的用户名和邮箱
git config --global user.email hk@123
git config --global user.name hk
配置成功后,git config -l 可以查看配置的信息
2.2 生成xxxx秘钥
命令行输入: ssh-keygen -t rsa -C "你的邮箱",但在首次提示时,即命令行提示:Enter file in which to save the key()中输入你要保存的路径和文件名,建议保存在~/.ssh/下,不要与之前配置github的秘钥重名。
秘钥和公钥的路径为:~/.ssh/hktest ~/.ssh/hktest.pub
2.3 配置XXX的公钥
2.4 新建config文件
在目录 ~/.ssh/ 下新建config文件:vi config
#xxx.com
Host git.xxxxcom
HostName git.xxxx.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/hktest
User hk
#github.com
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
User lightfollowed
保存文件,重启ubuntu。
三 测试验证
重启ubuntu后,在命令行下,下载xxx和github上的代码。如果能正确下载,则证明配置成功。
四、windows环境下配置多账户
与ubuntu下配置方法一致,不同的点在于。
- 下载windows底下的git进行安装。
- 进入git bash命令行配置git config、生成秘钥(秘钥一般都生成在当前目录),添加公钥到网站,与ubuntu下完全相同。
- 创建文件夹C:\Users\用户\.ssh,拷贝对应的秘钥和公钥到.ssh文件夹。
- 创建config文件,写入内容,保存
#xxx.com
Host git.xxxxcom
HostName git.xxxx.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/hktest
User hk
#github.com
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
User lightfollowed
5,验证测试代码的下载情况。
如果配置成功后,使用git clone还是会出现permission denied 或者no matching host key type found错误,如下图所示:
在文件:C:\Users\用户名\.ssh\config
增加以下二项
HostKeyAlgorithms ssh-rsa
PubkeyAcceptedKeyTypes ssh-rsa
去掉 PreferredAuthentications publickey
最终如下:
#xxx.com
Host git.xxxxcom
HostName git.xxxx.com
User xxxx #用户名
IdentityFile C:\Users\xxxxx\.ssh\私钥名
HostKeyAlgorithms ssh-rsa
PubkeyAcceptedKeyTypes ssh-rsa
#github.com
Host github.com
HostName github.com
User xxxx #用户名
IdentityFile C:\Users\xxxxx\.ssh\私钥名
HostKeyAlgorithms ssh-rsa
PubkeyAcceptedKeyTypes ssh-rsa
最后:点赞是美德,关注是缘分,收藏是肯定,打赏你随意,你的鼓励是我世界善的一部分,爱你们!