Install SVN in ubuntu

Install SVN Server

一、首先安装svn

sudo apt-get install subversion

二、创建svn账户(可选,以后操作方便,不创建也是可以的,直接用root)

useradd -d /home/svn -d svn

三、创建svn软件仓库

svnadmin create --pre-1.6-compatible mycode 

这里添加 --pre-1.6-compatible 是兼容性的考虑,否则提交代码时会提示“post commit FS processing had error: Couldn’t open rep-cache database”

四、修改配置

创建软件仓库后,进入mycode文件夹下,就可以看到下面这些文件:
[root@localhost mycode]# ls
conf db format hooks locks README.txt

进入conf文件夹,包含文件如下:
[root@localhost conf]# ls
authz hooks-env.tmpl passwd svnserve.conf

简单介绍一下:
authz:权限控制文件
passwd:用户设置文件
svnserve.conf:svn 服务配置文件

首先添加用户,修改passwd文件:

[users]
#harry = harryssecret
#sally = sallyssecret
test = 123456
work = 123456

test和work就是新增的svn用户,密码均为123456

再更改权限控制,修改authz文件:

[groups]
#harry_and_sally = harry,sally
#harry_sally_and_joe = harry,sally,&joe
admin = aaa,bbb,ccc
factory = ddd,eee

[/]
@admin = rw
* =

[/maserati_for_factory]
@admin = rw
@factory = rw

然后修改svn服务的配置,修改svnserve.conf:
主要打开下面4项:

anon-access = none #表示不允许匿名登陆
auth-access = write #账号登陆可以有写权限
password-db = passwd #启用用户配置
authz-db = authz #启用权限配置

最后启动svn服务

 svnserve -d -r svn_root/mycode #-d表示后台运行, -r表示后面为软件仓库的路径

五、可以进行登陆操作了

使用svn客户端软件,访问svn服务器,地址为svn://xxx.xxx.xxx.xxx #这里为服务器的IP地址

备注:
1、对于有些路径下的文件不想让某些用户看到
例如软件仓库中的tags目录不想被guest的账户读取,可以这样操作。
修改authz文件:

[/tags]
@admin = rw
* =

2、可能修改权限配置时会改错,这样就会导致登陆svn服务器时失败,可以在修改authz文件后,使用下面这个命令进行检查

svnauthz validate /home/svn_root/mycode/conf/authz

3、添加用户和修改权限配置时一定要注意,最好在=两边都有空格,否则也有可能无法登陆svn服务器

4、修改服务器配置的时候,配置项的前面不要有空格

auth-access = write #这样是正确的
 password-db = passwd #这样是错误的,因为最前面有一个空格

5、关闭svn服务

ps -aux | grep svn
kill -9 svn的进程ID

6、检查svn服务的网络端口是否启动(默认3690)

netstat -ntlp

7、使用add命令新增很多文件到软件仓库的时候,可能会有文件遗失,这是由于svn本身的过滤机制导致,使用下面的命令:

svn add --no-ignore test_code

8、在ubuntu中使用命令方式进行提交的时候,编译器可能用不惯,可以用下面的命令修改默认编译器

sudo update-alternatives --config editor

选择你习惯的编辑器就好了

9、无法查看log记录,需要确认svnserver.conf 文件中anon-access项是否配置正确

anon-access = none

Install SVN Client

正常安装

sudo apt-get install subversion
svn --version

在Ubuntu 12.04上升级到1.8.x版本

需要在/etc/apt/source.list中添加

deb http://ppa.launchpad.net/dominik-stadler/subversion-1.8/ubuntu/ precise main
deb-src http://ppa.launchpad.net/dominik-stadler/subversion-1.8/ubuntu/ precise main
sudo apt-get update

此时可能会报错:

W: GPG error: http://ppa.launchpad.net precise Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 2380DF3029E526FC
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 2380DF3029E526FC
sudo apt-get update
sudo apt-get install subversion
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值