Gitblit 添加密钥实现客户端无密码pull、push代码
之前管理代码用的是SVN,项目需要将管理代码软件切换为Git 折腾了一天,记录下遇到的小坑,方便后来人。
服务端
服务端 的系统是Windows Sever2008 ,首先在服务端安装window版本的gitblit,具体的安装方法教程很多,
可以参考这篇博文https://www.cnblogs.com/ucos/p/3924720.html,这篇文章写的很详细,初学者详细为王。需要
注意的是启动gitblit 文章的方法是双击批处理文件,我这里需要打开命令行并cd 到文件gitblit.cmd所在的路径,命令
行中运行gitblit.cmd 服务才能正常启动。
图1 启动服务操作示意图
客户端
客户端系统是Ubuntu16.04 ,首先需要安装apt,直接命令安装就可以 sudo apt-get git ,接下来是配置git
配置用户名,该用户名需要在Git服务端创建,通过网页的方式登录GitBlit创建用户,并为新用户分配密码,
邮箱。
git config --global user.name abc 注意abc用户已在服务端创建
配置用户邮箱
git config --global user.name 123456@qq.com 注意123456@qq.com在服务端为abc的邮箱
客户端创建密钥
ssh-keygen -t rsa -C 123456@qq.com 执行该命令后有提示要求输入密码,直接一路回车即可。
服务端添加密钥
客户端 执行ssh-keygen名后在当前用户目录下.ssh文件下会生成文件id_rsa.pub,将改文件的内容
添加的服务端Gitblit 具体的位置如下图所示,需要注意的是要当前的用户abc登录Gitblit,不是admin账号
图2 GitLit添加公有密钥示意图
服务端添加了公有密钥后,客户端pull、push代码不会再提示输入密码。需要注意的Bitblit针对不同的用户分配不同的Url地址,地址格式为
ssh://username@serverip:port/project.git,用户登录Gitblit后可以看到当前用户的Url地址 。
如需交流可加QQ群766718184 或者QQ3501870,该群主要用来交流音视频。