搭建SVN服务,有效的管理代码,以下三步可以快速搞定。
1、安装

#yum install subversion

判断是否安装成功

1 #subversion -v

svnserve, version 1.6.11 (r934486)
出现上面的提示,说明安装成功。

如果提示如下:-bash: subversion: command not found
经过查找发现:
[root@]# svnserve –version
svnserve, version 1.6.11 (r934486)
compiled Apr 11 2013, 16:13:51

Copyright (C) 2000-2009 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository back-end (FS) modules are available:

* fs_base : Module for working with a Berkeley DB repository.
* fs_fs : Module for working with a plain file (FSFS) repository.

Cyrus SASL authentication is available.

有了SVN软件后还需要建立SVN库。

1 #mkdir /opt/svn/repos
2 #svnadmin create /opt/svn/repos

执行上面的命令后,自动在repos下建立多个文件, 分别是conf, db,format,hooks, locks, README.txt。

2、配置

上面的操作很简单,几个命令就搞定, 下面的操作也不难。
进入上面生成的文件夹conf下,进行配置, 有以下几个文件authz, passwd, svnserve.conf
其中authz 是权限控制,可以设置哪些用户可以访问哪些目录, passwd是设置用户和密码的, svnserve是设置svn相关的操作。

2.1先设置passwd

[users]
# harry = harryssecret
# sally = sallyssecret
hello=123
用户名=密码

这样我们就建立了hello用户, 123密码

2.2 再设置权限authz

[/]
hello= rw

意思是hello用户对所有的目录有读写权限,当然也可以限定。
如果是自己用,就直接是读写吧。

2.3最后设定snvserv.conf

1 anon-access = none # 使非授权用户无法访问
2 auth-access = write # 使授权用户有写权限
3 password-db = password
4 authz-db = authz   # 访问控制文件
5 realm = /opt/svn/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

采用默认配置. 以上语句都必须顶格写, 左侧不能留空格, 否则会出错.

好了,通过以上配置,你的svn就可以了。

3、连接

启动svn:

1 svnserve -d -r /opt/svn/repos

如果已经有svn在运行,可以换一个端口运行

1 svnserve -d -r /opt/svn/repos --listen-port 3391

这样同一台服务器可以运行多个svnserver

好了,启动成功后,就可以使用了。
建议采用TortoiseSVN, 连接地址为: svn://your server address (如果指定端口需要添加端口 :端口号)

连接后可以上传本地的文件,有效的管理你的代码。

通过以上三步,可以快速的搭建起svn, 开启你的项目吧,如果您觉得有用,请留言,谢谢您的支持。
转载请著名来自(公共信息服务网), 谢谢!

——————————————-华丽的分割线————————————————————————————————
一 需求
开发服务器搭建好SVN服务器,不可能只管理一个工程项目,如何做到不在一个项目中的开发人员不能访问其它项目中的代码,做好技术保密工作。
代码仓库有三个仓库:project1,project2,project3
假设人员有6个人:eg1,eg2,eg3,eg4,eg5,eg6
eg1,eg2,只能访问project1;
eg3,eg4,只能访问project2;
eg5,eg6,只能访问project3;

二 实现
在你的仓库路径下:假如是/home/sv
cd /home/svn
//创建三个代码仓库
svnadmin create project1
svnadmin create project2
svnadmin create project3
//把两个权限配置文件复制到SVN
//根路径下,统一管理所有代码仓库
cd/projcet1/conf
cp authz passwd /home/svn
//打开配置文件
vi svnserve.conf

修改成如下:
anon-access = none //禁止匿名访问
auth-access = write
password-db = /home/svn/passwd //统一使用密码文件
authz-db = /home/svn/authz
realm = project1 //权限域名,很重要,写你的工程名

分别修改project2的svnserve.conf
和上面一样,最后一行分别写
anon-access = none //禁止匿名访问
auth-access = write
password-db = /home/svn/passwd //统一使用密码文件
authz-db = /home/svn/authz
realm = project2 //权限域名,很重要,写你的工程名

分别修改project3的svnserve.conf
和上面一样,最后一行分别写
anon-access = none //禁止匿名访问
auth-access = write
password-db = /home/svn/passwd //统一使用密码文件
authz-db = /home/svn/authz
realm = project3 //权限域名,很重要,写你的工程名

修改两个权限管理文件:
passwd
//用户名 = 密码
[users]
eg1 = 123
eg2 = 123
eg3 = 123
eg4 = 123
eg5 = 123
eg6 = 123

authz
[groups] //分组
admin = eg1,eg2
guest = eg3,eg4
guset1 = eg5,eg6
[/] //管理者拥有所有读写权限
* =
@admin = rw
[project1:/] //工程1的访问控制,guest1,2无法访问
@admin = rw

eg1 = rw
eg2 = rw
[project2:/]
@guest = rw

eg3 = rw
eg4 = rw
[project3:/]
@guest1 = rw

eg5 = rw
eg6 = rw

三 重启
svnserve -d -r /home/svn

停止命令
killall svnserve

实际测试:
各个组成员只能访问自己的项目,无权限查看别人的项目
只有管理员才能查看所有项目工程

LINUX搭建SVN客户端和多个项目的权限分组管理的更多相关文章

  1. SVN服务器多个项目的权限分组管理

    1.创建两个代码仓库 cd /home/svn svnadmin create project1 svnadmin create project2 2. 复制 authz  passwd 两文件到SV ...

  2. 原 Linux搭建SVN 服务器2

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  3. 原 Linux搭建SVN 服务器

    原 Linux搭建SVN 服务器 发表于1年前(2014-08-05 17:55)   阅读(12257) | 评论(3) 31人收藏此文章, 我要收藏 赞3 摘要 Linux搭建SVN 服务器 目录 ...

  4. Linux搭建SVN 服务器

    Linux搭建SVN 服务器 1          安装SVN 2          使用客户端连接 2.1       使用windows的客户端 2.2       使用Linux下的命令行 3  ...

  5. Linux搭建SVN 服务器(转)

    转自:http://my.oschina.net/lionel45/blog/298305 Linux搭建SVN 服务器 作者: 沈小然    日期:2014年 8月 5日 1          安装 ...

  6. Linux搭建SVN服务器(服务端)

    Linux搭建SVN服务器(服务端) 1 安装SVN SVN客户端:TortoiseSVN,官网下载:https://tortoisesvn.net/downloads.html(客户端) # yum ...

  7. linux 搭建SVN服务端

    搞了个服务器,然后现在想搞点事情,于是乎整个SVN在上面,算是熟悉下svn的操作过程 以下内容转载自: https://yq.aliyun.com/articles/6693 ------------ ...

  8. Linux搭建SVN

    Linux搭建SVN 服务器 1 安装SVN 官网下载:http://subversion.apache.org/packages.html SVN客户端:TortoiseSVN,官网下载:http: ...

  9. 最全Linux搭建SVN服务端教程

    文章首推 支付宝接口对接 高德地图调用 验证码登录 QQ邮箱登录 今日主题:Linux搭建SVN服务端 简介 相信程序员对SVN还是不陌生的,虽然现在用Git比较多,但是SVN也是用的,SVN可以做代 ...

随机推荐

  1. ConcurrentHashMap 原理分析

    1 为什么有ConcurrentHashMap hashmap是非线程安全的,hashtable是线程安全的,但是所有的写和读方法都有synchronized,所以同一时间只有一个线程可以持有对象,多 ...

  2. PHP学习之[第11讲]新浪微博开放平台 PHP 与 OAuth 接口(1)

    我是下载的微博最新的API练习了一下认证过程.

  3. sqlserver 查找某个字符在字符串中第N次出现的位置

    例如:查找'A,' 在'A,B,C,D,A,B,C,D,C,D,B,A,C,E,'中第二次出现的位置怎么实现,SQL 中有这样的函数吗? SQL code /* 方法很多,这里简单写一个 返回@fin ...

  4. HDOJ 5184 Brackets 卡特兰数扩展

    既求从点(0,0)仅仅能向上或者向右而且不穿越y=x到达点(a,b)有多少总走法... 有公式: C(a+b,min(a,b))-C(a+b,min(a,b)-1)  /// 折纸法证明卡特兰数: h ...

  5. Android Intent简介

    Intent对象主要用来在Android程序的Activity,Service和BroadcastReceiver这3大组件之间传输数据,而针对这3大组件,有独立的Intent传输机制,分别如下:1. ...

  6. @property的特性

    @property还有一些关键字,它们都是有特殊作用的,比如上述代码中的nonatomic,strong: 1 2 @property(nonatomic,strong) NSString *carN ...

  7. openstack初探

    一 .openstack三大核心功能: 计算--Nova.存储--Cinder.网络--Neutron. Nova:提供了计算资源的管理,可以管理跨服务网络的VM实例.还提供对多种Hypervisor ...

  8. HttpClient4.0

    ****************************HttpClient4.0用法***************************** 1.初始化HttpParams,设置组件参数 //Ht ...

  9. 【开源java游戏框架libgdx专题】-05-模块描述与上下文

    模块描述(Modules overview) Input:为所有的平台提供一个统一的输入模型和处理程序. 获取触摸示例: if (Gdx.input.isTouched()) { System.out ...

  10. Android中Action

    1 Intent.ACTION_MAIN String: android.intent.action.MAIN 标识Activity为一个程序的开始.比较常用. <activity androi ...