Git+Gerrit学习搭建笔记

    Git是目前最流行的分布式版本控制系统,而Gerrit是一种免费、开放源代码的代码审查软件,使用网页界面。利用浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。它使用Git作为底层版本控制系统。趁着做测试的机会,简单学习了解一下Git+Gerrit是如何搭建使用的,顺便简单做个小笔记。

     系统环境:Ubuntu12.04 Server 64

安装Git

$sudo su -           ##切换到root账户环境下(个人习惯)

#apt-get update

#apt-get install git-core             ##一条命令就可以吧Git搞定了~

# git --help                        ##Git的相关命令

usage: git [--version] [--exec-path[=<path>]] [--html-path] [--man-path] [--info-path]

[-p|--paginate|--no-pager] [--no-replace-objects] [--bare]

[--git-dir=<path>] [--work-tree=<path>] [--namespace=<name>]

[-c name=value] [--help]

<command> [<args>]

The most commonly used git commands are:

add        Add file contents to the index

bisect     Find by binary search the change that introduced a bug

branch     List, create, or delete branches

checkout   Checkout a branch or paths to the working tree

clone      Clone a repository into a new directory

commit     Record changes to the repository

diff       Show changes between commits, commit and working tree, etc

fetch      Download objects and refs from another repository

grep       Print lines matching a pattern

init       Create an empty git repository or reinitialize an existing one

log        Show commit logs

merge      Join two or more development histories together

mv         Move or rename a file, a directory, or a symlink

pull       Fetch from and merge with another repository or a local branch

push       Update remote refs along with associated objects

rebase     Forward-port local commits to the updated upstream head

reset      Reset current HEAD to the specified state

rm         Remove files from the working tree and from the index

show       Show various types of objects

status     Show the working tree status

tag        Create, list, delete or verify a tag object signed with GPG

安装Gerrit

Gerrit是由Java开发的,被封装为一个war包,所以需要Java环境。

#java --version                ##看一下Java是否被安装配置好

默认安装的OpenJDK,但是当时的同事说推荐还是用Oracle JDK,使用最新的稳定版本 Oracel JDK7

安装配置Oracel JDK7

#apt-get install oracle-java7-installer

#update-alternatives --config java

#vim /etc/environment

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games"

JAVA_HOME="/usr/lib/jvm/java-7-oracle"

#source /etc/environment

#echo $JAVA_HOME

安装配置Mysql数据库

这里也可以使用H2或者PostgreSQL数据库都可以。

#apt-get install mysql-server                 ##默认密码为空,记得为root设置一个密码,可以使用mysqladmin命令来设置

#mysql -u root  -p

mysql>CREATE USER ‘gerrit2‘@‘localhost‘ IDENTIFIED BY ‘password‘;

mysql>CREATE DATABASE reviewdb;

mysql>ALTER DATABASE reviewdb charset=latin1;

mysql>GRANT ALL ON reviewdb.* TO ‘gerrit2‘@‘localhost‘;

mysql>FLUSH PRIVILEGES;

创建gerrit2账户并下载初始化配置Gerrit

我下载的是gerrit-2.7-rcl.war

#adduser gerrit2                  ##创建gerrit2账户

#sudo su gerrit2

因为我都已经初始化设置过Gerrit,所以下面的显示结果是我又重新再执行一次命令之后的显示结果:

$java -jar gerrit-2.7-rc1.war init  -d  ~/gerrit_testsite

*** Gerrit Code Review 2.7-rc1

***

*** Git Repositories

***

Location of Git repositories   [test]:     ##指定Git库的位置,test就是Git的库的位置

*** SQL Database

***

Database server type           [mysql]:

Server hostname                [127.0.0.1]:

Server port                    [3306]:

Database name                  [reviewdb]:                ##指定之前创建的数据库

Database username              [gerrit2]:

Change gerrit2‘s password      [y/N]?

*** User Authentication

***

Authentication method          [LDAP/?]:                      ##使用Windos AD域控作为认证

LDAP server                    [ldap://10.100.2.75]:

LDAP username                  [gerrit]:

Change gerrit‘s password       [y/N]?

Account BaseDN                 [dc=test,dc=com]:

Group BaseDN                   [dc=test,dc=com]:

*** Email Delivery

***

SMTP server hostname           [localhost]:

SMTP server port               [(default)]:

SMTP encryption                [NONE/?]:

SMTP username                  :

*** Container Process

***

Run as                         [gerrit2]:

Java runtime                   [/usr/lib/jvm/java-7-oracle]:

Upgrade /home/gerrit2/gerrit_testsite/bin/gerrit.war [Y/n]?

Copying gerrit.war to /home/gerrit2/gerrit_testsite/bin/gerrit.war

*** SSH Daemon

***

Listen on address              [*]:

Listen on port                 [29418]:

*** HTTP Daemon

***

Behind reverse proxy           [Y/n]?

Proxy uses SSL (https://)      [y/N]?

Subdirectory on proxy server   []:

Listen on address              [10.100.2.201]:

Listen on port                 [8080]:

Canonical URL                  [http://10.100.2.201:8080]:

*** Plugins

***

Prompt to install core plugins [y/N]? y

Install plugin reviewnotes version 2.7-rc1 [y/N]? y

version 2.7-rc1 is already installed, overwrite it [y/N]? y

Install plugin commit-message-length-validator version 2.7-rc1 [y/N]? y

version 2.7-rc1 is already installed, overwrite it [y/N]? y

Install plugin replication version 2.7-rc1 [y/N]? y

version 2.7-rc1 is already installed, overwrite it [y/N]? y

Initialized /home/gerrit2/gerrit_testsite

$cd /home/gerrit2/gerrit_testsite/bin/

$./gerrit.sh   start    ##可以使用它自带的脚本来启动和停止Gerrit服务

$cd /home/gerrit2/gerrit_testsite/etc          ##上面的一些配置可以在这里再做修改

登陆访问Gerrit

打开浏览器使用测试机域控制器上的test账号就可以登陆访问Gerrit了

在这Web上面就可以直接创建项目,管理权限之类的,还在学习中~

要记住第一次登陆Gerrit账户的AD账号是管理员账号~

有问题多多指教,希望能和大家多学习多交流。

时间: 2024-08-06 09:24:23

Git+Gerrit学习搭建笔记的相关文章

Git服务器的搭建笔记

服务器系统选用ubuntu 系统 搭建步骤: 1.安装git sudo apt-get install git 2.创建git用户,运行git服务 sudo adduser git 3.创建证书登录 收集所有要登陆用户公钥,就是id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个. cd git mkdir .ssh cd .ssh touch authorized_keys 接下来,把开发者的 SSH 公钥添加到这个用户的 au

代码管理工具 --- git的学习笔记四《重新整理git(1)》

1.创建版本库 mkdir  创建目录 cd  地址,到该地址下 pwd 显示当前目录 1.创建目录 $ mkdir startGit $ cd startGit $ pwd 显示当前目录 或者cd到桌面,然后再创建目录 2.初始化版本库 $ git init 初始化仓库 提示信息:Initialized empty Git repository in /Users/xingzai/Desktop/startGit/.git/ 建立一个空的git仓库在/Users/xingzai/Desktop

GIT & GitHub 学习笔记

SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是自己的电脑,所以首先要从中央服务器哪里得到最新的版本,然后干活, 干完后,需要把自己做完的活推送到中央服务器.集中式版本控制系统是必须联网才能工作,如果在局域网还可以,带宽够大,速度够快,如果在互联网下,如果网 速慢的话,就纳闷了. Git是分布式版本控制系统,那么它就没有中央服务器的,每个人的电脑就是一个完整的版本库,这样,工作的时候就不需要联网了,因为版本都是在自己的电脑 上.既然每个人的电脑都有一个完整的版本库

git的学习笔记整理

git学习较好的网址:http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000/001373962845513aefd77a99f4145f0a2c7a7ca057e7570000 开源中国的git站点:http://git.oschina.net/oschina/git-osc/wikis/Home msysgit是Windows版的Git,从http://msysgit.github.

Gerrit服务器的搭建(Git+Gerrit+PostgreSQL+LDAP)

Gerrit简介 Gerrit是搭建在Git之上的基于Web的代码审查工具.大家都知道Git是一个分布式的代码版本管理工具,常用于多人协作开发的工作环境中,程序员将自己修改的代码提交到本地版本库,然后再push到远程的中央版本库中,见图1.这个过程中,代码的提交是没有经过审核的,对于分布在多个地点的团队来说,不能互相审查.评论其他人的代码,非常不利于代码质量的控制.而Gerrit就是用来进行代码审查的工具,程序员push到中央版本库的代码,首先要经过团队中Reviewers的审查,被接受后才会真

GIT Windows服务端搭建笔记

GIT Windows服务端搭建笔记 所需软件: GIT服务端: Bonobo Git Server,下载最新版 https://bonobogitserver.com/ 一:配置服务端(基于Windows10+Bonobo Git Server6.3) 打开IIS功能.控制面板->程序->启用或关闭Windows功能,勾选Internet Information Services的选项. 下载好Bonobo Git Server,是一个zip压缩包,是用ASP.NET  MVC开发的网站.

git(学习之四)git协议服务器搭建

####################################################################################################### qq:1218761836 qq群:150181442 E-mail:[email protected] #############################################################################################

廖雪峰Git教程学习笔记(一)

作者及其背景:仔姜,大三学生,幼儿园英语水平,熟系Linux文件基本操作(最基础的) 文章内容或许有些疏漏之处还望各位大佬见谅,如果构成侵权或出现其他问题,请联系我邮箱:[email protected],如果需要更全的知识请移步廖老师Git教程 学习内容来源:廖雪峰Git教程:https://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 感谢廖雪峰老师提供的教程 正文开始: Git简介 什

gerrit server搭建

Part 1  Gerrit Prerequisites: 1.Java JDK>1.7 2.Git 3.SSH server 4.DB part 2 Set local gerrit server: $ java -jar ./gerrit-2.11war init -d review_site DefaultSecureStore: #除以下选项外,其他选默认即可 Database server type [h2]: h2 Authentication method [OPENID/?]:d