gerrit

Gerrit系统框架介绍

瘦欲@ 提交于 2020-03-17 06:05:15
Gerrit目录介绍 转自:https://blog.csdn.net/tanshizhen119/article/details/79889242 先上图 bin/ : 主要是放gerrit.sh启动脚本,以及gerrit.war包 cache/ : 是放缓存文件,gerrit使用的缓存模式是h2数据库,以及guava缓存模块来做的。 data/ : 此目录是插件生成,非gerrit必需目录 db/ : gerrit默认使用的是 H2数据库 (gerrit是可以支持其他数据库的,例如: mysql, postgres )——默认数据库的名称是reviewdb,数据库存放的路径是可以进行配置的。不过现在gerrit会把一些数据从它的默认数据库移出来,用H2来存放,例如:account_patch_reviews.h2.db, 之前是和2.11版本的时候是和主数据库放在一起的,后面再2.13版本的时候独立出来放到里H2数据库当中。 gerrit支持的数据库: H2 Apache Derby PostgreSQL MySQL MariaDB Oracle SAP MaxDB DB2 SAP HANA etc/ : 放置gerrit.config 配置文件,secure.config密码相关配置文件,同时里面还设有发邮件的模板,服务端sshkey等。插件的配置文件也都会放在此目录下。

centos7安装mysql5.6

五迷三道 提交于 2020-03-11 10:48:02
CentOS7 上安装mysql5.6 (最好切换到root下操作!) CentOS7将默认数据库由mysql替换为Mariadb,因此需要先卸载Mariadb。方法为: [root@gerrit+gitlab ~]# rpm -qa|grep mariadb mariadb-libs-5.5.60-1.el7_5.x86_64 [root@gerrit+gitlab ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 删除my.conf:(如果存在的话) [root@gerrit+gitlab ~]# rm /etc/my.cnf 创建mysql用户组: [root@gerrit+gitlab ~]# groupadd mysql 创建mysql用户并加入用户组: [root@gerrit+gitlab ~]# useradd -g mysql mysql 下载安装包: 从 https://dev.mysql.com/downloads/mysql/5.6.html#downloads下载mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz,适配操作系统选择Linux - Generic (glibc 2.12) (x86, 64-bit), Compressed TAR

Bitnami Redmine 与 gerrit 整合问题解决

允我心安 提交于 2020-02-28 11:38:20
问题 : 使用Bitnami一键安装redmine后可以正常使用,但是在整合“版本库”功能与git整合后,页面报404错误: The entry or revision was not found in the repository. 版本库中不存在该条目和(或)其修订版本。 解决 : 找到 /opt/redmine-3.1.2-0/apache2/conf/bitnami/ passenger.conf文件,修改: PassengerUser daemon PassengerGroup daemon 中的用户与组改为创建git仓库所使用的用户和组,如gerrit2 解决过程描述 : 1. 查看日志文件 /opt/redmine-3.1.2-0/apache2/logs/ error_log 看到 App 10292 stderr: fatal: Not a git repository: '/home/gerrit2/review_site/git/xxx.git' 提示 2. 根据页面提示 baidu 和 google 相关问题,初步定位是文件权限问题。 3. 使用 [root@xxxx/opt/redmine-3.1.2-0/apps/redmine/htdocs]$ ../../../ruby/bin/ruby bin/rails server webrick -b 192

Initializing a local git/gerrit repository - what's the optimal way to do this?

本秂侑毒 提交于 2020-02-06 09:51:31
问题 I asked a question recently about the mechanism for mirroring into gerrit, but I'm starting to think that perhaps that's not an ideal thing to do (useful to know but maybe not for this use case). This question builds upon that one. There's a project on github we'd like to work on, and we'd like to see the branches for. We'd manage this with gerrit. I want to see the branches (and tags) but I don't want to check out directly on the remote branches... we'll have our own local branches and tags.

首次使用git拉取gerrit代码_ Permission denied

杀马特。学长 韩版系。学妹 提交于 2020-02-04 04:08:01
一.环境说明 windows10操作系统下, git作为代码版本管理工具, gerrit作为代码管理仓库 一.下载git软件 下载git软件本地安装成功. 二.配置gerrit gerrit配置好用户和密码后. 三.拉取Gerrit仓库代码 正确思路. git和gerrit一般可以通过http协议和ssh协议进行代码的同步,由于http协议不安全,ssh协议安全,一般使用ssh协议,此时需要先在git本地生成私钥和公钥,然后把git的公钥上传到gerrit上,进行权限校验. 常见错误: 在gerrit中通过git使用ssh拉取代码报错. Permission denied (publickey). fatal: Could not read from remote repository. Please make sure you have the correct access rights and the repository exists. 翻译过来意思是: 公钥权限失败.是由于需要先生产git的ssh和公钥和私钥,并且将git本地生成的公钥保存到gerrit中,这样ssh协议才能正常通信. 解决方法: 生成git的秘钥: ssh-keygen -t rsa -b 4096 -C “[git的用户名]” 然后复制本地git生成的公钥到Gerrit中.

Gerrit、repo的使用

北战南征 提交于 2020-01-31 05:38:25
一、引言 Gerrit,一种免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。 repo是Google开发的用于管理Android版本库的一个工具,repo是使用Python对git进行了一定的封装,并不是用于取代git,它简化了对多个Git版本库的管理。用repo管理的版本库都需要使用git命令来进行操作。 二、Gerrit的用户添加 1、账号密码 注册Gerrit需给Gerrit管理员发送邮件获取账号密码。 获取账号、密码、IP后登录对应仓库页面 2、修改名字和邮箱 如邮箱为xxxx@google.com,则“Full Name”填写为xxxx: 注册邮箱: 注册成功后会给邮箱发送一封邮件,点击链接进行验证 3、linux下添加用户 linux下的用户名须和管理员给的Gerrit账号名相同,如果没有,请添加新用户: git config --global user.name "xxxxx" ( 名字需要修改 ) git config --global user.email "xxxxx@xxx.com.cn" ( 修改邮箱 ) 添加密钥 ssh-keygen -t rsa -C "自己邮箱地址" 一直按回车键即可 出现如下图 则为成功添加密钥 然后公钥添加到Gerrit:

gitlab+gerrit+jenkins代码托管、审核、持续集成架构搭建

青春壹個敷衍的年華 提交于 2020-01-27 17:21:36
整体的架构设想图是这样的 首先声明一下:搭建架构时我的IP分配与端口 节点1:gitlab 192.168.0.177 节点2:gerrit http:192.168.0.179:9999     jenkins http://192.168.0.179:8180 如果搭建在一台服务器上面,请注意 gitlab默认会占用80端口和8080端口(这个我也想不明白为什么8080端口也会被占用),所以jenkins需要修改成其他端口 当时搭建的时候,也是参考别人的一个帖子http://www.codesec.net/view/215871.html,但是没有注明IP,很让我头疼,也走好多弯路。 1-1 gitlab搭建 GitLab 是一个使用使用 Ruby on Rails 搭建的,用于仓库管理系统的开源项目。使用 Git 作为代码管理工具,并在此基础上搭建起来的web服务 1.1.2. 环境搭建 a) 第一步:安装相应的在依赖包(postfix或者sendmail),其中选择internet site这种网络smtp邮件服务器这种方式来发送邮件,其他一些依赖包:curl \openssh-server\ ca-certificates\ postfix If you install Postfix to send email please select 'Internet Site'

Amended commits revert to previous commit

余生颓废 提交于 2020-01-25 07:28:11
问题 I have a repo with master branch. I have patch-sets 1 to 10 amended in a single commit. Now I have amended the 11th patch-set in that commit and pushed the code in gerrit. I want to revert the commit back to 10th commit and push. How do I revert, as if I see git log, it does not list the commits in that patch-set. But it rather takes it as a single commit. I have explained the sequence of actions done below. Sequence of actions 1. Initially for patch-set #1 git clone repo made changes to code

gerrit merge后不能提交问题

丶灬走出姿态 提交于 2020-01-18 09:26:55
需求:git 分支合并 问题:使用 git merge 在本地执行分支合并操作,然后想 push 到 gerrit 上评审入库,可是在提交时,提示: ! [remote rejected] HEAD -> refs/for/dev (no new changes) 分析:no new changes 的意思,是说,这个合并,是个线性的合并。而合并的那些历史的 commit 节点,在 gerrit 上都已经评审过了,都是已有的 change 单,所以 gerrit 认为没有新的提交,就不让你提交评审。 方法1: 在 git merge 的时候,加上 --no-ff 参数,是为了让它生成一个新的 commit,这样就可以提交了~(不过生成的 gerrit change 是看不到改动信息的) 方法2:不经过 gerrit,直接 push 入远程库。(不推荐) 来源: https://www.cnblogs.com/frankltf/p/11631481.html

gerrit提交触发jenkins编译

十年热恋 提交于 2020-01-17 08:57:44
https://www.jianshu.com/p/5b6a338ff18c 官方配置: https://wiki.jenkins.io/display/JENKINS/Gerrit+Trigger#GerritTrigger-TriggerConfiguration Gerrit+Jenkins https://blog.csdn.net/weixin_34019929/article/details/89869559 https://www.cnblogs.com/kevingrace/p/5651447.html Gerrit的原理: https://blog.51cto.com/muyusen/2438406 git commit 触发的hook: https://www.jianshu.com/p/b532d62da0f1 一、Jenkins安装完成后,在管理Jenkins里,安装两个插件 1、Gerrit Trigger:通过Gerrit事件触发Jenkins构建 2、Role-based Authorization Strategy:可以设置用户组的权限以及工程的权限,最直接的概念就是,可以设置某个用户只可以read、build某些工程。 二、在Jenkins首页,管理Jenkins -> Gerrit Trigger, 1、添加gerrit服务器 2