1.卸载svn
利用以下命令查看自己的系统是否已经安装了svn:
svn
上面显示为未安装,如果显示一下信息说明已安装,可以使用以下命令进行卸载:
sudo apt-get remove --purge subversion
(–purge 选项表示彻底删除改软件和相关文件)
2.安装svn
安装前建议更新一下z,再进行安装:
sudo apt-get update
sudo apt-get install subversion
上图显示安装成功。
可以验证一下,通过如下命令:
svn help //--svn帮助
svn --version //--svn版本
svnserve --version //--svn server版本
3.创建SVN版本库
a:创建项目目录和svn仓库:
sudo mkdir /home/svn
sudo mkdir /home/svn/repository
sudo chmod -R 777 /home/svn/repository
sudo svnadmin create /home/svn/repository
执行命令后,会在repository下生成以下文件:
对db进行权限设置:
sudo chmod -R 777 db
注:
如果不执行上述命令,会报如下错误:
这是因为我们用的都是sudo权限做的操作,默认只有root用户对文件夹才有写权限,因为root的umask是0022,别的用户没有写权限。
- 设置访问权限:需要对conf文件夹下的文件进行修改
vim /usr/local/svn/repository/conf/svnserve.conf
简单的修改几处配置
匿名用户可读anon-access = read(可改成none,即不可读)#权限用户可写auth-access = write#密码文件为passwdpassword-db = passwd#权限文件为authzauthz-db = authz
(去掉前面的#,并且顶格,不然可能会报错)
- 修改passwd文件,添加访问用户
vim /usr/local/svn/repository/conf/passwd
修改authz文件,设置用户权限
vim /usr/local/svn/repository/conf/authz
admin = guoke//用户guoke属于admin权限组
[repository:/]
@admin = rw //admin权限组的权限是读和写
- = rw 所有的组都具有读权限和写权限
- 启动服务器
svnserve -d -r /usr/local/svn
- 用如下命令查看svnserve是否已经运行
ps aux | grep svnserve
- 15
测试
svn co svn://127.0.0.1/repository --username guoke --password 123456
svnserve: E000098: 不能绑定服务器套接字: 地址已在使用 解决办法
==========================================
版权
为什么会出现这种原因呢?默认的启动svn服务,系统默认开启的端口为3690,当你启动第二个版本库时还是开启3690,所以就冲突了。
解决办法:
录入:#svnserve -d -r /mnt/westos --listen-port 3691
查询当前开启的服务
[root@localhost conf]# netstat -antple | grep svn
tcp 0 0 :::3690 ::? LISTEN 0 125064 7427/svnserve
tcp 0 0 :::3691 ::? LISTEN 0 125826 7617/svnserve
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。