centos6.5下大件SVN和git+gerrit
- 格式:docx
- 大小:20.58 KB
- 文档页数:7
1SVN安装
1.1安装
yum install subversion
1.2基本的SVN服务器配置
1.2.1新建一个目录用于存储SVN所有文件
# mkdir /home/svn
1.2.2新建一个版本仓库
# svnadmin create /home/svn/project
1.2.3初始化版本仓库中的目录
# mkdir project/server project/client project/doc (建立临时目录)
# svn import project/ file:///home/svn/project -m “初始化SVN目录”
1.2.4添加用户
要添加SVN用户非常简单,只需在/home/svn/project/conf/passwd文件添加一个形如“username=password”的条目就可以了。
为了测试,我添加了如下内容: [users]
# harry = harryssecret
# sally = sallyssecret
pm = pm_pw
server_group = server_pw
client_group = client_pw
test_group = test_pw
1.2.5修改用户访问策略
/home/svn/project/conf/authz记录用户的访问策略,以下是参考:
[groups]
project_p = pm
project_s = server1,server2,server3
project_c = client1,client2,client3
project_t = test1,test1,test1
[project:/]
@project_p = rw
* =
[project:/server]
@project_p = rw
@project_s = rw
* =
[project:/client]
@project_p = rw
@project_c = rw
* =
[project:/doc]
@project_p = rw
@project_s = rw
@project_c = rw
@project_t = rw
* =
1.2.6修改svnserve.conf文件,让用户和策略配置升效. svnserve.conf内容如下:
[general]
anon-access = none
auth-access = write
password-db = /home/svn/project/conf/passwd
authz-db = /home/svn/project/conf/authz
1.2.7启动服务器
svnserve -d -r /home/svn
注意:如果修改了svn配置,需要重启svn服务,步骤如下:killallsvnserve
2GIT/GERRIT代码管理
2.1GIT安装
yum install git
2.2GERRIT安装
2.2.1mysql建库
说明:mysql的安装此处不介绍
drop database gerritdb;
create database gerritdb;
grant all on gerritdb.* to 'gerrituser'@'localhost' identified by 'gerritpass';
2.2.2gerrit安装
java -jar gerrit-2.8.1.war init -d /home/gerrit/Review
Location of Git repositories [git]: git //创建存放代码的目录
Authentication method [OPENID/?]: HTTP //注意这个不要按回车跳过去了,否则不是HTTP认证,是需要用google的OPENID
SMTP server hostname [localhost]: //自己改成自己的邮箱smtp
SMTP username [?]: yourname@ //自己改成自己的邮箱 baiyunheng@
Listen on port [29418]: //如果同一个用户下建多个gerrit,
请不用都公用29418这个端口号如39418 49418
Behind reverse proxy [y/N]? y //使用反向代理的话必须选择y来配置,默认是N
Proxy uses SSL (https://) [y/N]? n
Subdirectory on proxy server [/]: /project/ //可以选择直接跳过,那样你的gerrit最后的URL是http://192.168.11.73:80
Listen on
port [8081]: //切记,此端口号一定不要和apache2占用相同的端口号,多个gerrit可以8082 8083 8084 //否则就会Starting Gerrit Code Review:Failed
Canonical
URL [http://*/]:http://192.168.11.7
3/project/ //上一步Subdirectory on proxy server 跳过不填则是http://192.168.11.73:80 (80为你将要在apache 给gerrit设置的端口
2.2.3配置文件
[gerrit]
basePath = git //指定被gerrit管理的所有git库存放位置,即review_site_project/git/ canonicalWebUrl = http://192.168.11.73/project/ //指定web访问gerrit的网址//填
自己的ip和端口号,勿完全抄
[database]
type = H2 //指定gerrit所默认数据库类型,可以选用mysql
database = db/ReviewDB
[auth]
type = HTTP //指定浏览器登录gerrit时的认证方式
[sendemail]
smtpServer = //指定smtp服务器地址
smtpUser = yourname@
[container]
user = project //指定gerrit所在机器的用户身份与上文创建的用户对应一致javaHome = /usr/lib/jvm/java-6-sun-1.6.0.24/jre //系统本身自带
[sshd]
listenAddress = *:29418 //指定sshd服务监听的端口号
[httpd]
listenUrl = proxy-http://127.0.0.1:8081/project/ //指定http代理地址[cache]
directory = cache //缓存位置
2.2.4nginx配置
说明:nginx安装此处不介绍
mkdir /etc/nginx/passwd
htpasswd -c /etc/nginx/passwd/gerrit2.passwd gerrit2
New password:
Re-type new password:
location /gerrit/ {
proxy_pass http://192.168.1.109:8084;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_set_header Host $host;
auth_basic "Gerrit Code Review";
auth_basic_user_file /etc/nginx/passwd/gerrit2.passwd;
}
增加用户的方式(需要重启nginx服务)
htpasswd /etc/nginx/passwd/gerrit2.passwd wangxiaoyun
New password:
Re-type new password:
2.2.5启停方式
1、gerrit的启停
sh /home/git/Review/bin/gerrit.sh restart
2、nginx的启停
启动:/home/nginx/nginx/nginx -c /home/nginx/nginx/nginx.conf
停止:sudo kill `cat /home/nginx/nginx/nginx.pid`。