代码托管-gerrit-介绍与环境搭建
什么是gerrit?
转载自 https://blog.csdn.net/tanshizhen119/article/details/79874127
gerrit是谷歌开源的一个git服务端。
主要功能:
1.代码托管
2.代码评审
3.细腻的权限管理(细到分支)
4.丰富的插件以及有很好的扩展接口
5.谷歌团队一直在维护,版本持续在迭代。
6.丰富的事件流,这个配合jenkins能完很多的花样,后面会好好介绍。
同类的产品还有gitlab,gitblit, 还有一个相比来说比较简单的git服务器。同时公网上还有github,开源中国,coding等代码托管服务器,这些也提供私有仓库或者是企业服务,但是一般来说企业往往都是自己搭建自己的git服务,毕竟源代码就是公司的命呀,把命交给别人并不是那么安全。
恶心的地方:
1. 就是因为是谷歌开发的。在国内开发的都知道,FQ好痛苦。
2. 里面大部分用的是谷歌的技术框架,这些技术框架现在用的人不是很多,所以百度起来信息很少,资料也很少。如果再加上你翻不了墙的话那真的就放弃吧。因为你连war包都不知道去那里下,更别说编译,构建,等等一系列的活了。
为什么是gerrit?
本人这一系列的文章,只研究开源系统。而且我比较看重他的评审功能(目前我并没有很好的代码评审工具),以及细腻的权限管理。在加上开源,以及具有很多的插件,以及开放了好多插件接口方便扩展。到时候和jenkins结合构建流水线的时候会好很多。
gerrit环境搭建(基于docker)
(强烈大家去学习一下docker,这一系列的文章的环境搭建,我都是基于docker进行部署)
docker镜像地址:openfrontier/gerrit 上面有dockerfile文件,大家可以看看别人是如何制作docker镜像的。
搭建环境教程:
1. 安装docker环境,以及配置相关参数(最好配置阿里docker源,这样下载速度回快很多)
2. 拉取镜像:docker pull openfrontier/gerrit
3. 创建mkdir ~/gerrit_volume目录,创建此目录是为了把在docker里的gerrit相关程序与数据映射出来,当程序运行时,增删改了数据能够保存在磁盘上。也便于我进行下一步的目录讲解。
4. 运行镜像docker run -d -v ~/gerrit_volume:/var/gerrit/review_site -p 8080:8080 -p 29418:29418 openfrontier/gerrit
在浏览器里输入 http://ip:8080进行访问。
用docker是不是很爽,拉个镜像,然后一条命令,就把环境搭建好了。
亮点展示
评审单列表
评审单明细
权限控制
代码托管-gerrit-介绍与环境搭建的更多相关文章
- Python介绍及环境搭建
摘自http://www.cnblogs.com/sanzangTst/p/7278337.html Python零基础学习系列之二--Python介绍及环境搭建 1-1.Python简介: Py ...
- Django 01 django基本介绍及环境搭建
Django 01 django基本介绍及环境搭建 #http服务器 #用来接收用户请求,并将请求转发给web应用框架进行处理 #Web应用框架 #处理完请求后在发送给http服务器,http服务器在 ...
- App自动化测试-1.App自动化介绍和环境搭建
App自动化测试-1.App自动化介绍和环境搭建 *:first-child { margin-top: 0 !important; } body>*:last-child { margin-b ...
- [springboot 开发单体web shop] 1. 前言介绍和环境搭建
前言介绍和环境搭建 简述 springboot 本身是为了做服务化用的,我们为什么要反其道使用它来开发一份单体web应用呢? 在我们现实的开发工作中,还有大量的业务系统使用的是单体应用,特别是对于中小 ...
- Maven介绍及环境搭建
Maven介绍及环境搭建 Maven是基于项目对象模型(POM),可以通过一小段描述信息来管理项目的构建.报告和文档的软件项目管理工具. 下载Maven boot:类加载器框架,Maven使用它加在自 ...
- Maven快速入门(一)Maven介绍及环境搭建
做开发的程序员都知道,在系统开发需要各自各样的框架.工具.其中有一种工具不管你是初级程序员还是高级程序员都必须熟练掌握的,那就是项目管理工具(maven.ant.gradle).接下来就总结Maven ...
- 持续集成-jenkins介绍与环境搭建
什么是持续集成? 转自:https://blog.csdn.net/tanshizhen119/article/details/80328523 持续集成,俗称CI, 大师Martin Fowler对 ...
- 使用WIF实现单点登录Part I——Windows Identity Foundation介绍及环境搭建
首先先说一下什么是WIF(Windows Identity Foundation).由于各种历史原因,身份验证和标识的管理一般都比较无规律可循.在软件里加入“身份验证”功能意味着要在你的代码里混进处理 ...
- web自动化框架之一介绍与环境搭建(Selenium+Eclipse+Python)
看到一篇环境搭建文章,详细又全面,这里就不一一重复了 http://blog.csdn.net/dyllove98/article/details/9390649 其它: 1.框架介绍 整个 ...
随机推荐
- TCP报文解析
概述 在<网络基础总结(一)>总结了TCP建立连接和断开连接的流程,然而TCP协议远比我所了解的复杂得多,我所知的可以说就冰山一角,所总结的也只是纸上谈兵,仅仅只能对TCP有个肤浅的认识, ...
- ASP.Net Core MVC+Ajax 跨域
要求 C端:用户端(http://www.b.com) A端:管理端(http://admin.b.com) 问题:A端上传图片到C端指定文件夹内保存,供C端使用. 方案 ① C端从nuget引入Mi ...
- Python进阶:全面解读高级特性之切片!
导读:切片系列文章连续写了三篇,本文是对它们做的汇总.为什么要把序列文章合并呢?在此说明一下,本文绝不是简单地将它们做了合并,主要是修正了一些严重的错误(如自定义序列切片的部分),还对行文结构与章节衔 ...
- 卷积神经网络之AlexNet
由于受到计算机性能的影响,虽然LeNet在图像分类中取得了较好的成绩,但是并没有引起很多的关注. 知道2012年,Alex等人提出的AlexNet网络在ImageNet大赛上以远超第二名的成绩夺冠,卷 ...
- Server Error in '/' Application Runtime Error 错误
项目发布后 在本地发布可以运行 在服务器就会出现这种错误 在网上也查找了各种资料 解决方案 都没有解决 因为我用的C# 首先在 Webconfig配置文件中的 system.web中加入 < ...
- 二级联动,三级联动,初学者,纯javascript,不含jQuery
二级联动: html代码: <body> <select id="province" onchange="getCity(this.options.se ...
- Vue.js 学习笔记 第1章 初识Vue.js
本篇目录: 1.1 Vue.js 是什么 1.2 如何使用Vue.js 本章主要介绍与Vue.js有关的一些概念与技术,并帮助你了解它们背后相关的工作原理. 通过对本章的学习,即使从未接触过Vue.j ...
- react-native 金币彩带雨下落动画
日常项目中,经常遇到一些表情雨/金币雨/彩带雨 等下落的动画,之前做android原生的时候,写过类似的效果,主要通过自定义view 在onDraw里绘制下落的过程,具体可以看下我的这篇github地 ...
- SSIS-导入Excel文件时记录行号
SSIS导入Excel时记录行号 1. "Excel源"后添加"脚本组件" 2. "脚本组件"中新增输出列,命名为"RowNumb ...
- 如何用RSS订阅?
本文由云+社区发表 摘要:我们常常会有订阅别人文章的需求,有更新的时候希望能有提醒的功能,RSS就是这样一个订阅的方式.很多网站上看到RSS的入口,点进去以后总是显示一堆的XML代码,我们来看看怎么使 ...