先说点题外话,趁着过年期间有些时间,重装了电脑系统,所有的软件,开发环境都得重新配置,遇到的最重要的问题就是代码的权限的配置,公司使用的gitLab托管的代码,我使用的工具是TortoiseGit,别问我为什么,就是喜欢小乌龟。
1. 首先我们看一个错误页面,当自己没有配置sshkey的时候,pull或者push代码会有如下的界面。
上面这段话的大体意思是在本机中没有找到相应的安全凭证,需要你做一些选择……我们点击取消操作,看看如何解决这个问题。
2.配置SSH Key
SSH的原理我们就不多说了,这里使用的是rsa的非对称的加密算法,验证的机制就是我们本机会生成一对公钥私钥,私钥自己保存,公钥放在gitLab上面。
首先在TortoiseGit的安装目录下的bin文件夹中找到puttygen.exe这个工具,或者在开始菜单搜索这个程序(如果你没有选择安装目录的话默认路径应该是:C:\ProgramFiles\TortoiseGit\bin),这个工具是用来生成密钥对的,打开它点击Generate,然后鼠标在进度条下方不停的晃动,几秒后就会生成密钥对,点击Savaprivate key保存私钥到本地(输入一个名字,保存到一个你找的到的文件夹),我一般放在C盘下。不要关闭这个窗口,接下来还会用到。
打开GitLab,找到Profile settings(右上角)下的SSH keys选项,选择Add SSH Key,Title输入框里输入一个名称(随便写,或者不写自动生成一个),然后把上面生成的以ssh-rsa开头的一长串密钥复制到Key输入框,点击Add Key保存。
到这里SSH Key就配置成功了,刚才生成密钥对的窗口可以关闭了。
3.在本地项目中配置SSH Key
在项目的文件夹上右击鼠标,选择TortoiseGit—Settings—Remot,
因为我用的是汉化版本,所有文字介绍略有差异,在PuttyKey后选择刚才保存到本地的私钥,然后点击应用。
设置SSH客户端,选择Network选项,在下面的SSH Client选项中选择TortoiseGit的安装目录下bin文件夹中的TortoiseGitPlink.exe程序,如果已经默认选中,直接确定就可以了。
在Pull或Push项目的时候,记得勾选AutoloadPutty Key选项。
到这里,GitLab配置SSH Key就已经全部完成了。