gerrit 配置怎么没有显示gitclone地址

gerrit 配置怎么没有显示gitclone地址,第1张

1、首先生成ssh密钥

ssh-keygen -t rsa -C your_email

2、上传公钥

登录到gerrit后,点击右上角setting,然后点击”SSH Public Keys”,把自己的公钥复制到文本域中

3、登录gerrit绑定邮箱,在setting的Contact Information中

4、关闭当前命令行,重新打开一个bash进行用户名和邮箱的配置

[plain] view plain copy

git config --global user.name your_name

git config --global user.email your_email

5、从远端克隆项目到本地

[plain] view plain copy

git clone ssh://[email protected]:29418/ghostlpx

6、复制gerrit提供的钩子脚本,在每次提交时都会生成change-id

[plain] view plain copy

scp -p -P 29418 [email protected]:hooks/commit-msg .git/hooks/

备注:当执行Git add “file”添加到暂存器,然后执行git commit提交到本地库的时候,git需要在commit的时候在日志中写入一个唯一标识提交的SHA-1值,即Change-Id值。git commit时会调用commit-msg脚本检查提交信息,以便在git push的时候能正常推送到远程库。此时调用默认目录下的commit-msg钩子脚本,默认目录为“.git/hooks/commit-msg”。如果此目录下无commit-msg脚本,则commit时提交日志中无ChangeId信息,则在git push的时候出错,无法正常将改动上传到远程服务器。

访问gerrit的h2数据库步骤:

1、从 https://code.google.com/p/gerrit/downloads/list 页面下载gerrit的war包到某个目录

2、数据库准备,懒得设置用了默认的H2 DB

3、创建gerrit2用户,初始化

sudo adduser gerrit2

sudo su gerrit2

java -jar gerrit.war init -d /home/gerrit2/site

一些交互式提问,默认或自定义,同样懒得设置apache,认证用了 development_become_any_account 选项,反向代理没有;

设置完成就自动启动了~如果没有启动手动 ./site/bin/gerrit.sh start

4、创建标准 后台服务连接

sudo ln -snf `pwd`/site/bin/gerrit.sh /etc/init.d/gerrit.sh

sudo ln -snf ../init.d/gerrit.sh /etc/rc3.d/S110gerrit

sudo ln -snf ../init.d/gerrit.sh /etc/rc5.d/S110gerrit

5、登陆http://10.20.20.XX:9080,页面右上角点击become :

注册用户 fullname emailaddress name ssh公钥(.ssh/id_rsa.pub)设置保存,

设置保存后,在客户端验证一下,命令及输出如下:

[$name@$hostname ~]$ ssh -p 29418 [email protected]

****Welcome to Gerrit Code Review****

Hi $fullname, you have successfully connected over SSH.

Unfortunately, interactive shells are disabled.

To clone a hosted Git repository, use:

git clone ssh://$name@$hostName.$domainname:29418/REPOSITORY_NAME.git

Connection to 10.20.20.XX closed.

6、从gerrit服务器,clone代码工

git clone ssh://[email protected]:29418/$repoName.git

7、进入项目目录cd $repoName 安装hook钩子的目的是在提交信息中自动创建 'Change-Id:' 标签

scp -p -P 29418 [email protected]:hooks/commit-msg .git/hooks/

8、修改提交

9、push 到gerrit服务器

git push origin HEAD:refs/for/$branchName

#直接git push会失败,原因还不知道~~ ~~

10、push成功后web页面All->open和My->changes标签下面,就可以看到提交的修改了

11、web的review没有approve选项,需要在project的accecss中增加相应权限还有后面的verify权限也是类似 *** 作

具体就是卡在这个更新上:

想了想,应该是这个用 ssh key 认证更新。开始配置 ssh key

三步走完后,添加 ssh key 到Gerrit上。

1.找到 ssh key 的配置页面

2.添加

3.完成

完成以上步骤之后,验证上传的 ssh key 是否能用。

验证命令:

验证成功:

我的问题就出现在这里,ssh验证不成功,导致cocoapod在更新ssh地址的时候失败

解决方案,关了自己的代理。 哭晕在厕所。。。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11441787.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存