linux 在本地创建svn服务器_Linux下搭建svn服务器

1、安装 SVN 服务端

安装 Subversion

yum install -y subversion

2、创建 SVN 版本库

创建项目版本库

mkdir -p /data/svn/myproject // #创建svn目录

svnadmin create /data/svn/myproject //#建立svn版本库

3、配置 SVN 信息

配置文件简介

版本库中的配置目录 conf 有三个文件:

authz 是权限控制文件

passwd 是帐号密码文件

svnserve.conf 是SVN服务综合配置文件

配置权限配置文件 authz

编辑 authz ,内容参考如下:

示例代码:/data/svn/myproject/conf/authz

[groups]

#用户组

admin = admin,root,test

#用户组admin 所对应的用户

test=user3

#用户组test 所对应的用户

other = user4

#用户组other 所对应的用户

[/]

#库目录权限(/data/svn/myproject)

@admin = rw

#用户组权限

user4=r

#非用户组权限

[myproject:/]表示仓库下的权限定义

user3=r

#如果要分项目,则以此规则类推:

#如:

[myproject:/aaa]则表示仓库下的aaa项目的权限定义。

user4=r

*=r

###################################################################

[/]

#指定所有的版本库默认只读,root可读写

*=r

root=rw

[project1:/]

#指定对版本库project1根目录的权限

@p1_group_a=rw

@p1_group_d=rw

@p1_group_t=r

[project1:/trunk/admin]

#指定对版本库project1的/trunk/admin根目录的权限,

配置账号密码文件 passwd

编辑 passwd ,内容参考如下:

示例代码:/data/svn/myproject/conf/passwd

[users]

# harry = harryssecret

# sally = sallyssecret

admin = 123456

root = 123456

test = 123456

配置 SVN 服务综合配置文件 svnserve.conf

编辑 svnserve.conf ,内容参考如下:

示例代码:/data/svn/myproject/conf/svnserve.conf

[general]

# force-username-case = none

# 匿名访问的权限 可以是read、write,none,默认为read

anon-access = none

#使授权用户有写权限

auth-access = write

#密码数据库的路径

password-db = passwd

#访问控制文件

authz-db = authz

#认证命名空间,SVN会在认证提示里显示,并且作为凭证缓存的关键字

realm = /data/svn/myproject

# realm = /data/svn/ ->这个也可以

# realm = myproject ->这个也可以

[sasl]

4、启动 SVN 服务

启动 SVN

svnserve -d -r /data/svn

备注:如果要关闭svn,直接使用killall svnserve命令即可

checkout SVN项目

mkdir -p /data/workspace/myproject

svn co svn://127.0.0.1/myproject /data/workspace/myproject --username root --password 123456 --force --no-auth-cache

提交文件到 SVN 服务器

从本地提交文件到 SVN 服务器,其中 root 密码为 /data/svn/myproject/conf/passwd 文件存储的密码

cd /data/workspace/myproject

echo test >> test.txt

svn add test.txt

svn commit test.txt -m 'test'

提交成功后可以通过如下命令从本地项目删除文件

cd /data/workspace/myproject

rm -rf test.txt

删除后可以通过 SVN 服务器恢复

cd /data/workspace/myproject

svn update

5、用cornerstone连接(svn://admin@101.132.77.100/myproject)

80e0aa39ea56b89994aa3366ef9c16bd.png

备注:如果创建svn库路径只到/data/svn/的话,链接地址到跟路径即可

mkdir -p /data/svn/        // #创建svn目录

svnadmin create /data/svn///#建立svn版本库

(svn://admin@101.132.77.100/)

大功告成

恭喜您已经完成了搭建 SVN 服务器

6、svn扩展知识点

SVN在服务器端的存储方式和客户端是不一样的,所以在服务器端是看不到源文件的。服务器端有两种存储方式FSFS和BDB,目前默认都是FSFS。

要导入文件有两种做法:

1、用import指令,将客户端文件夹导入到服务器端

2、先checkout空库到客户端,然后将要导入的文件夹放入客户端checkout产生的空文件夹,然后执行add将这些文件夹纳入SVN控制,最后执行commit上传到服务器

http://blog.csdn.net/qq_29945729/article/details/52936900

更详细可参考

在SVN中有三个项目:ALL,CRM,OA

有三个用户:all,crm,oa

步骤:

[groups]

group_all = all,crm,oa

group_crm = all,crm

group_oa = all,oa

admin = admin

[/]  ===>这个根权限要开放出来,不然都进不去里面的子目录

@group_all = rw

[/all]

# @group_all = rw

* =

[/crm]

@group_crm = rw

* =

[/oa]

group_oa = rw

* =

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值