简化篇

http://blog.csdn.net/Eric_lmy/article/details/51942931

详细篇

1.安装Subversion Server
Subversion server binaries maintained by the Ubuntu Project. Packages include the Subversion client, and tools to create a Subversion repository and to make a repository available over a network.
Run this command as root:
$ apt-get install subversion

从上面可以看出安装很简单只要运行如下命令:

sudo apt-get install subversion
验证安装是否成功可以使用如下命令:

svn help --svn帮助
svn --version --svn版本
svnserve --version --svn server版本
2. 创建SVN 版本库

mkdir /u02/svn
svnadmin create /u02/svn/svnname --svnname为版本库名称
3.SVN 配置

创建版本库后,在这个目录下会生成3个配置文件:

[root@singledb conf]# pwd
/u02/svn/davesvn/conf
[root@singledb conf]# ls
authz passwd svnserve.conf

(1)svnserve.conf: svn服务配置文件下。
(2)passwd: 用户名口令文件。
(3)authz: 权限配置文件。

svnserve.conf 文件, 该文件配置项分为以下5项:
anon-access: 控制非鉴权用户访问版本库的权限。
auth-access: 控制鉴权用户访问版本库的权限。
password-db: 指定用户名口令文件名。
authz-db:指定权限配置文件名,通过该文件可以实现以路径为基础的访问控制。
realm:指定版本库的认证域,即在登录时提示的认证域名称。若两个版本库的认证域相同,建议使用相同的用户名口令数据文件
Passwd 文件 :
我们在svnserve.conf文件里启用这个文件。然后配置如下:
[root@singledb conf]# cat passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.

[users]
# harry = harryssecret
# sally = sallyssecret
dave = davepwd
tianlesoftware = tianlesoftwarepwd

authz 文件 :
在网上找到一个很好的配置例子:
[groups]
admin = john, kate
devteam1 = john, rachel, sally
devteam2 = kate, peter, mark
docs = bob, jane, mike
training = zak
--这里把不同用户放到不同的组里面,下面在设置目录访问权限的时候,用目录来操作就可以了。

# 为所有库指定默认访问规则
# 所有人可以读,管理员可以写,危险分子没有任何权限
[/] --对应我测试里的:/u02/svn 目录
* = r
@admin = rw
dangerman =

# 允许开发人员可以完全访问他们的项目版本库
[proj1:/]
@devteam1 = rw
[proj2:/]
@devteam2 = rw
[bigproj:/]
@devteam1 = rw
@devteam2 = rw
trevor = rw

# 文档编写人员对所有的docs目录有写权限
[/trunk/doc]
@docs = rw

# 培训人员可以完全访问培训版本库
[TrainingRepos:/]
@training = rw

下面我们来配置我们的authz文件:
[root@singledb conf]# cat authz
[groups]
admin = dave
dev=tianlesoftware
[davesvn:/]
@admin = rw
@dev = rw
[root@singledb conf]#
4 启动和停止SVN服务

(1)启动SVN服务:
[root@singledb conf]# svnserve -d -r /u02/svn

-d表示后台运行
-r 指定根目录是 /u02/svn
[root@singledb conf]# ps -ef | grep svn

root 4592 1 0 18:04 ? 00:00:00 svnserve -d -r /u02/svn
root 4594 3709 0 18:04 pts/1 00:00:00 grep svn
(2)停止SVN服务:
ps -aux |grep svn
kill -9 进程杀掉

本文转自:https://my.oschina.net/jast90/blog/382688

最新文章

  1. 【转】 App架构设计经验谈:接口的设计
  2. ASP.NET MVC的运行机制--url的全局分析
  3. 身份证验证合法性js--已验证
  4. NET程序内存分析工具CLRProfiler的使用(性能测试)
  5. JAVA上百实例源码以及开源项目
  6. 使用shiro的SimpleHash来生成常用的摘要串
  7. string s = null 和 string s = “”的区别
  8. 如何在asp.net中获取GridView隐藏列的值?
  9. EasyHook远注简单监控示例 z
  10. STL algorithm算法merge(34)
  11. Why Hadoop2
  12. Java Drp项目实战——Drp知多少
  13. 第三方控件netadvantage UltraWebGrid如何生成多级跨行表头个人总结
  14. oracle中to_date详细用法示例(oracle日期格式转换)
  15. win10 nginx
  16. 免费开源ERP-成功案例分析(2)
  17. 基于Servlet的MVC模式用户登录实例
  18. Promise实践
  19. c# 适配器批量修改
  20. 2019-03-11-day008-函数帮助

热门文章

  1. 诸葛亮的锦囊妙计竟然是大名鼎鼎的Java设计模式:策略模式
  2. JAVAEE_Servlet_22_Cookie实现十天内免登录
  3. 这种ERP系统核查工作实际是在做无用功
  4. shopify 学习链接整理
  5. 技术面试问题汇总第005篇:猎豹移动反病毒工程师part5
  6. ubuntu14.04忽然不能登录,输入密码一直返回登录界面
  7. 【python】Leetcode每日一题-前缀树(Trie)
  8. Wampserver-添加虚拟主机
  9. 微信小程序中的加载更多(即列表分页)
  10. MySQL密码复杂度与密码过期策略介绍