centOS7下SVN的安装和使用

1. 安装

CentOS通过yum安装subversion。

# yum install subversion

 subversion安装在/bin目录:

# which svnserve #查看目录命令/usr/bin/svnserve

检查一下subversion是否安装成功。不要使用1.8版本

svnserve --version

svnserve, version 1.7.14 (r1542130)

 

2. 建立版本库

subversion默认以/var/svn作为数据根目录,可以通过/etc/sysconfig/svnserve修改这个默认位置。

# vim /etc/sysconfig/svnserve

文件内容

OPTIONS="-r /var/svn"

可修改

 

使用svnadmin建立版本库svntest。

# mkdir -p /var/svn/svntest //递归创建多个目录

# svnadmin create /var/svn/svntest

 

# ll /data/svn/svntest //查看目录中内容

drwxr-xr-x. 2 root root  51 Nov 10 14:42 conf

drwxr-sr-x. 6 root root 4096 Nov 10 14:42 db

-r--r--r--. 1 root root    2 Nov 10 14:42 format

drwxr-xr-x. 2 root root 4096 Nov 10 14:42 hooks

drwxr-xr-x. 2 root root  39 Nov 10 14:42 locks

-rw-r--r--. 1 root root  229 Nov 10 14:42 README.txt

 

3. 配置

cd /var/svn/svntest

a、编辑用户文件passwd,新增两个用户:admin和guest。

# vim conf/passwd

[users]

admin = admin

guest = guest

b、编辑权限文件authz,用户admin设置可读写权限,guest设置只读权限。

# vim conf/authz

[/]

admin = rw

guest = r

c、编辑svnserve.conf:

# vim conf/svnserve.conf

[general]anon-access = none #控制非鉴权用户访问版本库的权限

auth-access = write #控制鉴权用户访问版本库的权限

password-db = passwd #指定用户名口令文件名

authz-db = authz #指定权限配置文件名

//realm = svntest #指定版本库的认证域,即在登录时提示的认证域名称 //测试不需要

 4. SVN服务

启动SVN服务。

# systemctl start svnserve.service

检查服务是否启动成功。

# ps aux | grep svnroot 16349 0.0 0.1 162180 900 ? Ss 15:01 0:00 /usr/bin/svnserve --daemon --pid-file=/run/svnserve/svnserve.pid -r /opt/svn

通过netstat可以看到SVN打开了3690端口

netstat -tnlpProto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:3690 0.0.0.0:* LISTEN 16349/svnserve

设置成开机启动。

# systemctl enable svnserve.service

 

5. 更改防火墙设置

大坑,注意阿里云要开相应端口3690

# vim /etc/sysconfig/iptables

添加一下两行 vim操作 yy p

-A INPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT

-A OUTPUT -m state –state NEW -m tcp -p tcp –dport 3690 -j ACCEPT //不需要

然后退出编辑,重启防火墙

查看 # iptables -L -n

# service iptables restart //这是centOS6 的命令

# /bin/systemctl restart iptables.service

6. 客户端测试

客户端可以通过TortoriseSVN测试。

Linux下客户端使用SVN

将文件checkout到本地目录svn666

svn checkout svn://127.0.0.1 ./svn666

有修改的时候

# svn add * //添加文件

# svn commit -m '这是注释内容' //提交

# svn update //更新

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CentOS 7 中安装 Subversion (SVN) 需要几个步骤,因为默认仓库管理工具不是 SVN。以下是详细的安装过程: 1. **更新包列表并安装依赖**: ``` sudo yum update -y sudo yum install -y curl-devel expat-devel gettext-devel openssl-devel apr-util-devel apr-devel ``` 2. **下载并配置 Apache HTTP Server** (用于作为 SVN 服务器的前端): ``` sudo yum install httpd mod_dav_svn -y ``` 启动并设置为开机启动: ``` sudo systemctl start httpd sudo systemctl enable httpd ``` 3. **安装 SVN**: ``` sudo yum install subversion -y ``` 4. **配置 SVN**: 打开 SVN 的配置文件 `httpd.conf` 或者找到 `conf.d/subversion.conf` (取决于你的 Apache 版本),通常位于 `/etc/httpd/conf.d/` 目录下。添加以下内容,如果不存在则需要手动创建: ```bash LoadModule dav_svn_module /usr/lib64/httpd/modules/mod_dav_svn.so <Location /repos> DAV svn SVNParentPath /path/to/repositories AuthType Basic AuthName "Subversion Repositories" AuthUserFile /path/to/svn-auth-file </Location> ``` 其中 `/path/to/repositories` 是 SVN 存储库的实际路径,`/path/to/svn-auth-file` 是存放用户名和密码的文件。 5. **设置 SVN 用户权限**: 创建一个 SVN 用户组和文件权限: ``` sudo useradd -R svn-user:svn-user /path/to/repositories sudo chmod -R g+rwx,o= /path/to/repositories ``` 6. **配置 SVN 认证文件**: 使用 `htpasswd` 工具创建认证文件,例如 `/path/to/svn-auth-file`: ``` sudo htpasswd -c /path/to/svn-auth-file username ``` 按提示输入新用户的密码。 7. **重启 Apache** 服务以应用更改: ``` sudo systemctl restart httpd ``` 现在你应该可以访问 `http://your-server-ip/repos` 来使用 SVN 了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值