ubuntu下搭建svn服务器

本文介绍如何在Ubuntu系统上安装Subversion(SVN),并详细解释了如何进行服务器配置、创建用户组、设置访问权限等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、安装

直接使用命令安装

$ sudo apt-get install subversion 

安装完成后,你也许会问,它给我装到什么地方去呢?不要急用whereis即可知道

sucre‘s blog

二、服务器配置

1、创建相应的用户及群组

sudo addgroup subversion  //不是必须的

sudo usermod -G subversion -a sucre //不是必须的

使用reboot重启系统,使得上面的配置生效,重启完成后,执行下面的命令

$ sudo mkdir /home/svn  

$ cd /home/svn  

$ sudo mkdir myproject  

$ sudo chown -R root:subversion myproject 

记得修改/etc/subversion/servers文件,把里面的store-plaintext-passwords = no前面的#去掉 //这样就把密码保存为不可见了,一定要做啊。

myproject是你的工程名,以下是chown的用法

 
  1. sucre@sucre-ubuntu:~$ chown --help  
  2. 用法:chown [选项]... [所有者][:[组]] 文件...  
  3.   或:chown [选项]... --reference=参考文件 文件...  
  4. 更改每个文件的所有者和/或所属组。  
  5. 当使用 --referebce 参数时,将文件的所有者和所属组更改为与指定参考文件相同。  
  6.  
  7.   -c, --changes                 类似 verbose,但只在有更改时才显示结果  
  8.       --dereference             受影响的是符号链接所指示的对象,而非符号链接本身  
  9.   -h, --no-dereference          会影响符号链接本身,而非符号链接所指示的目的地  
  10.                                 (当系统支持更改符号链接的所有者时,此选项才有用)  
  11.       --from=目前所有者:目前组  
  12.                          只当每个文件的所有者和组符合选项所指定的,  
  13.                          才会更改所有者和组。其中一个可以省略,这时  
  14.                          已省略的属性就不需要符合原有的属性。  
  15.       --no-preserve-root        不特殊对待"/"(默认值)  
  16.       --preserve-root           不允许在"/"上递归操作  
  17.   -f, --silent, --quiet 去除大部份的错误信息  
  18.       --reference=参考文件      使用参考文件的所属组,而非指定值  
  19.   -R, --recursive               递归处理所有的文件及子目录  
  20.   -v, --verbose                 为处理的所有文件显示诊断信息  
  21.  
  22. 以下选项是在指定了 -R 选项时被用于设置如何穿越目录结构体系。  
  23. 如果您指定了多于一个选项,那么只有最后一个会生效。  
  24.  
  25.   -H         如果命令行参数是一个通到目录的符号链接,则遍历符号链接  
  26.   -L         遍历每一个遇到的通到目录的符号链接  
  27.   -P         不遍历任何符号链接(默认)  
  28.  
  29.       --help     显示此帮助信息并退出  
  30.       --version  输出版本信息并退出  
  31.  
  32. 如果没有指定所有者,则不会更改。 所属组若没有指定也不会更改,但当加上  
  33. ":"时 GROUP 会更改为指定所有者的主要组。所有者和所属组可以是数字或名称。  
  34.  
  35. 示例:  
  36.   chown root /u         将 /u 的属主更改为"root"。  
  37.   chown root:staff /u   和上面类似,但同时也将其属组更改为"staff"。  
  38.   chown -hR root /u     将 /u 及其子目录下所有文件的属主更改为"root"。  
  39.  
  40. 请向bug-coreutils@gnu.org 报告chown 的错误  
  41. GNU coreutils 项目主页:<http://www.gnu.org/software/coreutils/>  
  42. GNU 软件一般性帮助:<http://www.gnu.org/gethelp/>  
  43. 请向<http://translationproject.org/team/zh_CN.html> 报告chown 的翻译错误  

2、下面的命令用于创建 SVN 文件仓库:

$ sudo svnadmin create /home/svn/myproject 

3、赋予组成员对所有新加入文件仓库的文件拥有相应的权限:

$ sudo chmod -R g+rws myproject 

三、访问权限设置

当创建了 SVN 文件仓库,您可以修改 /home/svn/myproject/conf/svnserve.conf 来配置其访问控制

可以取消下面的注释符号来设置授权机制:

# [general]  

password-db = passwd 

现在,可以在“passwd”文件中维护用户清单。编辑同一目录下“passwd”文件,添加新用户。语法如下:

username = password //如:admin = admin

#(注意行开始不要有多余空格) 

sucre‘s blog 

现在,可以在本地或者远程通过 svn://访问 SVN 了,您可以使用“svnserve”来运行 svnserver,语法如下:

$ svnserve -d --foreground -r /home/svn //一般$ svnserve -d --foreground就可以了,不用跟后边的路径,否则不能多个目录svn

运行这个命令后,如果没有任何提示就说明运行成功了,我们的svn就已经配置好了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值