linux 安装svn

1.安装ubuntu

centos:centos

  yum install subversionsvn

ubuntu:spa

  sudo apt-get install subversioncode

 

2.配置regexp

2.1. 建立仓库

  

咱们这里在/home下创建一个名为svn的仓库(repository),之后全部代码都放在这个下面,建立成功后在svn下面多了几个文件夹。orm

[root@localhost /]# cd /home [root@localhost home]# mkdir svn [root@localhost home]# svnadmin create /home/svn [root@localhost home]# ls svn conf db format hooks locks README.txt

咱们这里特别关注一下conf文件夹,这个是存放配置文件的server

[root@localhost home]# cd svn/conf [root@localhost conf]# ls authz passwd svnserve.conf

其中:blog

  • authz 是权限控制文件
  • passwd 是账号密码文件
  • svnserve.conf 是SVN服务配置文件

接下来咱们依次修改这3个文件。coffeescript

2.2. 配置passwd

[root@localhost conf]# vi passwd [users] test1=123456 test2=123456

上面的例子中咱们建立了2个用户,一个test1,一个test2

2.3. 配置authz

[root@localhost conf]# vi authz [/] liuxianan=rw test1=r test2=r *=

上面配置的含义是,liuxianan/home/svn/下全部文件具备可读可写权限,test只有只读权限,除此以外,其它用户均无任何权限,最后一行*=很重要不能少。

2.3.1. 拓展:使用用户分组

这个我通常不用,可是记录下来。

仍是这个文件:

[root@localhost conf]# vi authz [groups] group1 = liuxianan group2 = test1,test2 [/] @group1 = rw @group2 = r * =

上面配置中建立了2个分组,分组1的用户可读可写,分组2的用户只读。

格式说明:

版本库目录格式:
[<版本库>:/项目/目录]
@<用户组名> = <权限>
<用户名> = <权限>

2.4. 配置svnserve.conf

[root@localhost conf]# vi svnserve.conf 打开下面的5个注释 anon-access = read #匿名用户可读 auth-access = write #受权用户可写 password-db = passwd #使用哪一个文件做为帐号文件 authz-db = authz #使用哪一个文件做为权限文件 realm = /home/svn # 认证空间名,版本库所在目录

2点注意:

  • 最后一行的realm记得改为你的svn目录
  • 打开注释时切记前面不要留有空格,不然可能有问题(网上说的,我没有亲测)

3.启动与中止

[root@localhost conf]# svnserve -d -r /home/svn(启动) [root@localhost conf]#killall svnserve(中止)

上述启动命令中,-d表示守护进程, -r 表示在后台执行。中止还能够采用杀死进程的方式:

[root@localhost conf]# ps -ef|grep svnserve root 4908 1 0 21:32 ? 00:00:00 svnserve -d -r /home/svn root 4949 4822 0 22:05 pts/0 00:00:00 grep svnserve [root@localhost conf]# kill -9 4908

最后来个总的截图:

5.客户端链接

这里使用TortoiseSVN,输入地址svn://你的IP 便可,不出意外输入用户名和密码就能链接成功了。

默认端口3690,若是你修改了端口,那么要记得加上端口号。

 

6.注意事项

6.1 修改svnserve.conf的时候,去掉注释#,前面别留空格(password-db = passwd等,前面不能有空格,不然登录不了)

6.2 svn启动和中止 ,命令是svnserve,不是svnserver

6.3 仓库是一个总的,svn checkout svn://127.0.0.1/pro    下载到本路径的是pro项目文件,不是pro里的项目代码,因此要在wwwroot里checkout。这个跟window的svn客户端恰好相反,

      window里svn://ip/pro,下载下来的pro里的项目代码,要在www/pro里checkout。

相关文章
相关标签/搜索