Git+Gerrit学习搭建笔记
2014-11-27 22:31
369 查看
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账号是管理员账号~
有问题多多指教,希望能和大家多学习多交流。
系统环境: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账号是管理员账号~
有问题多多指教,希望能和大家多学习多交流。
相关文章推荐
- Linux学习笔记——搭建Git服务器
- 学习Git之笔记一---关于Git版本下载和环境搭建和配置
- Git学习笔记(三)——Git远程版本库的搭建
- Git学习笔记(10)——搭建Git服务器
- Git学习笔记(四)标签和搭建Git服务
- 【学习笔记】ubuntu12.04安装与配置gitolite搭建git服务器
- git学习--gerrit服务器搭建总结
- 【OpenCV学习笔记3】OpenCV GUI 之 搭建MFC+OpenCV開發環境
- WCF学习笔记之 - 搭建WCF技术知识框架
- Symbian学习笔记一环境搭建
- ASP.NET学习笔记2----用站点导航控件与母版页搭建页面框架
- Mini 容器学习笔记1——环境搭建(基础篇)
- spring2.5.6学习笔记三:搭建与测试Spring的开发环境
- AS3-学习笔记-flashdevelop平台-搭建-配置(转载加补充)
- ITCAST视频-Spring学习笔记(搭建与测试Spring的开发环境)
- git学习笔记(一):创建和管理远程分支
- opengl vc2005平台学习 学习笔记(一)--环境的搭建
- Android 学习笔记(一)——开发环境搭建
- opengl vc2005平台学习 学习笔记(一)--环境的搭建
- 搭建LAMP 环境学习笔记