Svn是什么
SVN是subversion的缩写,是一个开放源代码的版本控制系统,通过采用分支管理系统的高效管理,简而言之就是用于多个人共同开发同一个项目,实现共享资源,实现最终集中式的管理。
服务端部署
安装
yum -y install subversion
创建版本库目录,(仅为目录,为后面创建版本库提供存放位置)
mkdir /data/svn -p
创建svn版本库
svnadmin create /data/svn/test
进入对应目录
cd /data/svn/test
版本库目录树如下:
tree -L 2
.
├── conf
│ ├── authz #svn用户权限控制
│ ├── passwd #svn账户密码配置
│ └── svnserve.conf #svn配置信息
├── db
│ ├── current
│ ├── format
│ ├── fsfs.conf
│ ├── fs-type
│ ├── min-unpacked-rev
│ ├── revprops
│ ├── revs
│ ├── transactions
│ ├── txn-current
│ ├── txn-current-lock
│ ├── txn-protorevs
│ ├── uuid
│ └── write-lock
├── format
├── hooks
│ ├── post-commit.tmpl
│ ├── post-lock.tmpl
│ ├── post-revprop-change.tmpl
│ ├── post-unlock.tmpl
│ ├── pre-commit.tmpl
│ ├── pre-lock.tmpl
│ ├── pre-revprop-change.tmpl
│ ├── pre-unlock.tmpl
│ └── start-commit.tmpl
├── locks
│ ├── db.lock
│ └── db-logs.lock
└── README.txt
修改配置文件
修改authz
cat authz | grep -v ^###
[aliases]
# joe = /C=XZ/ST=Dessert/L=Snake City/O=Snake Oil, Ltd./OU=Research Institute/CN=Joe Average
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
# 创建组test,定义组内成员有test1、test2、test3
test = test1,test2,test3
# [/foo/bar]
# harry = rw
# &joe = r
# * =
# [repository:/baz/fuz]
# @harry_and_sally = rw
# * = r
# 权限定义 / 下 test组具有读写权限
[/]
@test = rw
修改passwd
cat passwd | grep -v ^###
# 配置账户名称及其密码
[users]
# harry = harryssecret
# sally = sallyssecret
test1 = test1passwd
test2 = test2passwd
test3 = test3passwd
修改svnserve.conf
cat svnserve.conf | grep -v ^###
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
realm = /data/svn
# force-username-case = none
[sasl]
# use-sasl = true
# min-encryption = 0
# max-encryption = 256
启动服务
svnserve -d -r /data/svn
客户端连接
linux端
偷个懒,没有应用场景。略。
windows端
使用TortoiseSVN图形化工具来进行配置
官网地址:https://tortoisesvn.net/downloads.html
下载地址就在首页,可根据下载的版本下载对应的中文语言包
先安装主程序,安装完成后再安装语言包
安装过程与普通软件安装并无差异,不再描述
连接远程仓库的方式:
- 本地选择需要保存仓库数据的目录
- 进入到选择的目录右击鼠标,点击SVN 检出
- 在版本库URL中填写svn://服务端ip/test
- 在检出至目录填写需要本地保存仓库的目录
- 确定,并根据后续提示输入账号密码