SVN版本管理系统的安装 CentOS + Subversion + Apache + Jsvnadmin

root用户操作                         

 

建议安装前更新操作系统

yum update

更新完成后重启

reboot

 

安装apache

yum install httpd httpd-devel

service httpd start

chkconfig httpd on

 

# vi /etc/httpd/conf/httpd.conf

找到 ServerName 并修改成

ServerName localhost:80

 

防火墙中打开80端口:

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

service iptables restart

 

http://192.168.4.221/

 face/64JS2bnRcSRQCKBajHrjxHYjKetZnWMr.png                                  

安装SVN服务

yum install mod_dav_svn subversion

必须安装mod_dav_svn模块

 

安装完svn后要重启apache

service httpd restart

 

查看测试是否安装svn模块

ls /etc/httpd/modules/ | grep svn

mod_authz_svn.so

mod_dav_svn.so

svn --version

 

 

创建svn库主目录(多库模式,一份配置文件管理多个库)

mkdir /svn/

 

cd /etc/httpd/conf.d

ls

此时可以看到一个subversion.conf配置文件(是在安装mod_dav_svn模块时生成的)

 

vi subversion.conf

添加以下内容

#Include /svn/httpd.conf

<Location /svn/>

DAV svn

SVNListParentPath on

SVNParentPath /svn

AuthType Basic

AuthName "Subversion repositories"

AuthUserFile /svn/passwd.http

AuthzSVNAccessFile /svn/authz

Require valid-user

</Location>

RedirectMatch ^(/svn)$ $1/

 

创建/svn/passwd.http和/svn/authz

touch /svn/passwd.http

touch /svn/authz

 

重启apache

service httpd restart

 

安装jsvnadmin

svnadmin介绍

(在Google Code上,需要FQ才能下载。我们也会把最新版的jsvnadmin放到群共享中)

https://code.google.com/p/jsvnadmin/

https://jsvnadmin.googlecode.com/files/svnadmin-3.0.5.zip

 

安装MySQL(单独安装,与业务系统的数据库分开)

rpm -qa | grep mysql      ## 查看该操作系统上是否已经安装了mysql数据库,

有的话,可以通过 rpm -e 命令 或者 rpm -e --nodeps 命令来卸载掉

yum install mysql-server mysql mysql-devel

service mysqld start

 

chkconfig --list | grep mysqld

mysqld          0:off   1:off   2:off   3:off   4:off   5:off   6:off

用上面的命令查看到MySQL并没有设置开机启动,所以需要设置开机启动

chkconfig mysqld on

 

为了方便远程管理,防火墙中打开3306端口

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

重启防火墙,使端口配置生效

service iptables restart

 

设置MySQL数据库root用户的密码:

mysqladmin -u root password 'wusc.123'

登录数据库:

# mysql -u root -p

 

MySQL授权远程访问(先用root登录mysql)

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'wusc.321' WITH GRANT OPTION;

mysql> FLUSH PRIVILEGES;

 

 

使用Tomcat7部署svnadmin

cd /root

使用wget下载最新版的tomcat7 的tar.gz包

tar -zxvf apache-tomcat-7.0.xx.tar.gz

mv apache-tomcat-7.0.xx svnadmin-tomcat

 

修改Tomcat的端口为9000和容器编码为UTF-8

vi /root/svnadmin-tomcat/conf/server.xml

修改以下标红的内容

<Server port="9005" shutdown="SHUTDOWN">

<Connector port="9000" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" URIEncoding="UTF-8" />

 

防火墙中打开9000端口

vi /etc/sysconfig/iptables

-A INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -j ACCEPT

重启防火墙,使端口配置生效

service iptables restart

 

cd /root/svnadmin-tomcat/webapps

rm -rf *

 

上传 svnadmin.war 到/root/svnadmin-tomcat/webapps目录

cd /root/svnadmin-tomcat/webapps

解压

unzip svnadmin.war -d svnadmin

备份

mv svnadmin.war /root/tools/

cd svnadmin/WEB-INF

vi jdbc.properties

内容改为如下

db=MySQL

#MySQL

MySQL.jdbc.driver=com.mysql.jdbc.Driver

MySQL.jdbc.url=jdbc:mysql://127.0.0.1:3306/svnadmin?characterEncoding=utf-8

MySQL.jdbc.username=root

MySQL.jdbc.password=wusc.123

 

创建svnadmin数据库并导入相应数据(UTF-8编码)

执行db/mysql5.sql 和 db/lang/en.sql

 

启动svnadmin-tomcat

/root/svnadmin-tomcat/bin/startup.sh

浏览器中打开:http://192.168.4.221:9000/svnadmin/

face/e6iNMHkbSh5rBBZDhtfnEARyGA8mKD26.png


如:输入admin,wusc.123

face/mXYtcdzj35PyrmwxdJ6f7ZRGRKJptQpj.png

 

创建库

face/QWbzSSxMkYkFhZnSM8Kt6dxpGF5PXezX.png

face/FhZN3Ke75QYTWWHKEjpS5e87JANtpTPm.png

 

此时:

/svn/目录下会创建一个wusc_edu的SVN库目录。

同时也会多出一个httpd.conf文件,内容与subversion.conf一样,在/etc/httpd/conf.d/subversion.conf中已配置。

/svn/authz 授权文件中会多出如下内容:

[aliases]

[groups]

wusc_edu_developer=

wusc_edu_manager=

wusc_edu_tester=

 

[wusc_edu:/]

@wusc_edu_manager=rw

 

以上过程其实是调用了svn对应的命令做了相应的操作

 

 

配置库目录权限

cd /svn

chown -R apache.apache wusc_edu

chmod -R 777 wusc_edu

如创建新库,需要对新建的库目录执行以上两步授权操作

 

关闭SELinux(Linux的访问控制)

修改/etc/selinux/config 文件

vi /etc/selinux/config

将SELINUX=enforcing改为SELINUX=disabled

重启机器即可

reboot

 

 

SVN版本管理平台(Subversion+Apache+Jsvnadmin)的使用:

 

先安装SVN管理客户端TortoiseSVN,方便对SVN库的操作和管理

http://tortoisesvn.net/downloads.html

注意64位系统要安装64位版

 

接下来可以对wusc_edu库进行相应的操作

(1) 用户组

(2) 用户

(3) 授权

(4) 导入项目

 

face/3iBDpkaJ27xDBMkzdpHE5ZNDxJch7QaN.png

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
将VisualSVN Server从Windows迁移到CentOS需要进行以下步骤: 1. 安装SubversionApache HTTP Server 在CentOS系统中安装SubversionApache HTTP Server,可以使用以下命令: ``` sudo yum install subversion httpd ``` 2. 迁移VisualSVN Server仓库 将VisualSVN Server仓库迁移到CentOS系统中。您可以使用svnadmin dump命令在Windows系统中导出仓库的完整副本,然后使用svnadmin load命令将其导入到CentOS系统中。具体命令如下: 在Windows系统中执行以下命令导出仓库: ``` svnadmin dump "C:\Repositories\MyRepo" > C:\Repositories\MyRepo.dump ``` 将导出的文件MyRepo.dump拷贝到CentOS系统中,然后执行以下命令导入仓库: ``` svnadmin create /path/to/repository svnadmin load /path/to/repository < MyRepo.dump ``` 3. 安装mod_dav_svn模块 在CentOS系统中安装mod_dav_svn模块,可以使用以下命令: ``` sudo yum install mod_dav_svn ``` 4. 配置Apache HTTP Server 在Apache HTTP Server的配置文件中添加以下内容: ``` LoadModule dav_svn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn> DAV svn SVNPath /path/to/repository AuthType Basic AuthName "Subversion repository" AuthUserFile /path/to/users Require valid-user </Location> ``` 其中,SVNPath指定了SVN仓库的路径,AuthUserFile指定了用户认证文件的路径。 5. 创建用户并设置密码 使用htpasswd命令创建用户并设置密码: ``` sudo htpasswd -c /path/to/users username ``` 其中,username为您要创建的用户名。 6. 重启Apache HTTP Server 执行以下命令重启Apache HTTP Server: ``` sudo systemctl restart httpd ``` 完成以上步骤后,您就可以在CentOS系统中使用VisualSVN Server的仓库了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值