SVN安装

SVN默认端口:3690

[root@tom01 www]# yum -y install subversion

[root@tom01 www]# rpm -qa subversion
subversion-1.6.11-15.el6_7.x86_64

mkdir /var/svn #创建svn版本库根目录
svnadmin create /var/svn/project #创建版本库(一个项目)
mkdir /var/svnpasswd #创建密码文件集中管理目录

修改配置文件
vim /var/svn/project/conf/svnserve.conf
anon-access = none #匿名用户没有任何权限
auth-access = write #授权用户可写
password-db = /var/svnpasswd/passwd #使用哪个文件作为账号文件
authz-db = /var/svnpasswd/authz #使用哪个文件作为权限文件

把认证文件和账号文件放入集中管理目录
cd /var/svn/project/conf/
mv authz passwd /var/svnpasswd/
[root@tom01 ~]# chmod 600 /var/svnpasswd/passwd
[root@tom01 ~]# chmod 600 /var/svnpasswd/authz

设置帐号密码
vim /var/svnpasswd/passwd
在[users]块中添加用户和密码,
格式:帐号=密码,如test = 123

设置权限
vim /var/svnpasswd/authz
在末尾添加如下代码:
[/]
test = rw

注:如果要是用组 在定义的组名前加@ 例:在groups标签中创建了sa组 就在定义的项目下@sa 就表示这个项目目录可以让sa组有对应的权限

启动svn版本库
svnserve -d -r /var/svn/
-d 后台运行
–listen-port=3690
-r 指定服务根目录
[root@tom01 ~]# lsof -i :3690
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
svnserve 54719 root 3u IPv4 88545 0t0 TCP *:svn (LISTEN)

如果有报错:svnserve: warning: cannot set LC_CTYPE locale
vim /etc/profile
export LC_ALL=C
source /etc/profile

本地测试访问
svn list file:///var/svn/project/

测试
svn import . file:///var/svn/project/ -m "first’ #向svn库中导入数据 . 是当前目录下的文件 -m后面是加一个标签

svn co svn://10.125.192.5/project /project --username=gao --password=gao #下载svn库里文件到/project目录 co=commit
svn up /project #跟新本地project目录 up=upload
svn list file:///var/svn/project --verbose #查看内容
svn log svn://10.125.192.9/project #查看修改记录
svn info svn://10.125.192.9/project

配置windows客户端
在windows中创建一个文件夹存放snv数据
右键文件夹>>SVN Checkout>>svn://10.125.192.5/project(project是创建的版本库)
在这里插入图片描述
在这里插入图片描述
客户端保存账号信息路径
C:\Users\Administrator\AppData\Roaming\Subversion\auth\svn.simple 下的文件

创建子项目
在主项目project项目下创建了子项目stu01,test用户管理project主项目,linux服务端只修改/var/svnpasswd/authz授权文件。
1.
vim /var/svnpasswd/authz
[project:/stu01]
test= rw
lixiang= rw
[project:/stu02]
lilei = rw
test = rw
2.
windows客户端操作
先用主账号gao创建stu01目录并提交一下操作(这步操作就是在project项目下创建了stu01项目目录)

3.在windows中创建一个文件夹存放snv(stu01项目)数据
右键文件夹>>SVN Checkout>>svn://10.125.192.9/project /stu01 (stu01是project下的子项目)
在这里插入图片描述

注:关于项目的问题(路径)
svn可以分为单个或多个版本库,假设:

 版本库目录为 /var/svn/project

 启动程序如果是:svnserve -d -r /var/svn/project  

                        这代表你当前svn只为project这个版本库工作,客户端访问直接svn://IP/ 就可以了,后面不跟目录

 启动程序如果是:svnserve -d -r /var/svn/          

                        这代表你当前svn可以多版本库运行,客户端访问就需要加上 svn://IP/project  这样才能访问project  版本库

[root@tom01 ~]# vim /svn/pro/conf/authz
如果是一个版本库
[/]
root = rw
如果是多个版本库
[/stu01]
li = rw

[/stu02]
lixiang = rw

关键的问题:首先要看svnserver是如何启动的 然后配合小乌龟的路径 不然会有认证错误
1 启动方法 和小乌龟的路径
[root@tom01 ~]# svnserve -d -r /svn/pro/ #以pro为根
小乌龟设置 就不要设置pro路径了
在这里插入图片描述
2 启动方法 和小乌龟的路径
[root@tom01 ~]# svnserve -d -r /svn/ 以svn为根所以小乌龟的路径就要指定自己有权限的目录
在这里插入图片描述

总结:个人觉得要能正确使用svn 需要看启动方式(启动的路径)、/svn/pro/conf/authz和小乌龟三种路径配合,所以我觉得把/svn/pro/conf/authz的权限路径都设置成[/]好了,只需要让剩下的两个对应上就好了,不然会有点晕。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值