Gerrit使用过程及部分问题总结

Gerrit,一种免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。它使用Git作为底层版本控制系统。

最近由于服务器奔溃需要重新配置拉取代码,期间也遇到了一些问题,在这里把流程和问题总结一下。

流程:

1.登录Gerrit。从管理员那里拿到分配好的账号,密码和相关的邮箱,打开Gerrit,输入账号密码登录。

2.生成rsa文件。这一步你需要在终端输入ssh-keygen,然后如果以前有rsa,终端会询问你是都重新生成,输入y或者n,接着让你输入密码,直接按enter就行。

3.配置config文件。进入.ssh文件夹,你会看到三个文件(如果没有config文件,则要自己生成)。

Gerrit使用过程及部分问题总结_第1张图片

config文件是配置文件,输入你的用户名,hostName,port等信息。

4.生成SSH Public Keys。点击.pub文件,command+a再command+c复制,然后打开gerrit,进入setting页面,点击SSH Public Keys,生成公钥。

Gerrit使用过程及部分问题总结_第2张图片

如果你以前没创建过的话,点击add,然后在空白处把刚才复制的.pub里面的内容command+v。点击add,就生成新的公钥了。

Gerrit使用过程及部分问题总结_第3张图片

5.配置完成,拉取代码了。当然你可能会遇到一些问题,比如:

问题:

1.pull代码或者fetch代码时提示: Unable to negotiate with 192.168.4.28 port 19428: no matching key exchange method found. Their offer: diffie-hellman-group1-sha1 

fatal: Could not read from remote repository.Please make sure you have the correct access rights and the repository exists.

临时解决办法:你可以先输入export GIT_SSH_COMMAND='ssh -o KexAlgorithms=+diffie-hellman-group1-sha1'。

终极办法:虽然上面的指令可以解决问题,但是你会发现你每次fetch,或者pull等一些操作都需要输入这个,很烦人。这时你可以再次进入.ssh文件夹,找到config文件,编辑,把Host * KexAlgorithms=+diffie-hellman-group1-sha1加进去,就不用每次操作都输入了。

2. 每次pull或者fetch事后都需要输入密码。

原因可能是你在终端配置ssh-keygen时候输入了密码导致(就是输入密码选项时没有直接enter而是输入密码),很简单,再次在终端输入ssh-keygen,然后输入密码时候直接enter就行。让后重复3、4、5的操作,就OK了。

你可能感兴趣的:(Gerrit使用过程及部分问题总结)