Ubuntu SVN安装及使用

1 安装

sudo apt-get install subversion

2 配置和部署

创建用于存放版本库的目录

mkdir /var/svn

并在创建的目录下创建一个新的文件夹,文件夹的名称与将要上传至svn的项目名称一致(本例中为cglt3_1):

sudo svnadmin create /var/svn/cglt3_1

创建完成后,cglt3_1目录下会生成一些文件,进入conf目录下。conf目录中authz文件是权限控制文件,passwd是帐号密码文件,svnserve.conf是SVN服务配置文件

【1】 修改passwd文件,加入用户,格式就是“用户名=密码”,如:zhaodaxin = zhaodaxin;
【2】 修改authz文件,加入用户权限:

[/] 
zhaodaxin = rw

注意“[/]”不能少,且不是反斜杠。zhaodaxin 为用户名,rw表示赋予该用户读写的权限。若配置失败,可能会出现“svn: E220003: Invalid authz configuration”错误。

【3】 修改svnserve.conf(很重要),将下图中白色字体原有的注释删除。

在这里插入图片描述

【4】 启动svn服务:
svnserve --listen-port=8899 -d -r /var/svn
可通过ps -ef|grep svn查看是否存在svn进程已确定svn是否启动成功。

3 SVN的使用

在导入项目前,首先需给/var/svn/cglt3_1文件夹赋予权限,否则会报“svn: E000013: Can’t open file ‘/var/svn/cglt3_1/db/txn-current-lock’: Permission denied”错误,赋予权限的方式为:

sudo chmod -R 777 /var/svn/cglt3_1

发现文件夹有绿色底纹(如下图)时成功。
在这里插入图片描述

3.1 项目导入

打开终端,将工作目录切换到所用上传的项目的目录(本例中cglt3_1放在桌面:cd Desktop),导入项目:

svn import cglt3_1 svn://localhost:8899/cglt3_1

3.2 项目更新提交

打开终端,将工作目录切换到所用上传的项目的目录,更新提交项目:

svn ci -m “comment”

-m “comment”为该版本代码添加注释。

3.3 项目导出

使用svn co svn://localhost:8899/cglt3_1 ./cglt3_1 命令将导入的项目导出到根目录的cglt3_1文件夹下。

注意:必须要导出,否则会报非工作目录的错误,导出之后将eclipse中的项目引向导出的文件夹(为了在eclipse中更改项目时同步更改文件夹内容),之后可使用svn add、svn ci等命令更新svn。

3.4 项目导出某个版本

SVN提供Command来完成这项工作,Command格式为:

svn co URL[repository URL] -r [version num]

其中version number为参数,可以为数字型的,也支持时间,SVN会自动Check Out最接近这个日期的版本。
例如
svn co svn://localhost:8899/buddle -r 29 ./buddle

4 在实际应用中遇到的问题

  • 无法提交、导出(如下图)
    在这里插入图片描述
    解决办法:出现该问题时,可检查svn服务是否开启,在未开启服务的情况在是无法进行提交、导出等操作的。

  • Password for ‘(null)’ GNOME keyring错误
    解决办法

    rm ~/.gnome2/keyrings/login.keyring

  • svn log
    在这里插入图片描述
    解决办法:在svnserve.conf 文件中, 设置 anon-access = none

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值