第一步:快速上手 Linux 安装svn
代码如下 | 复制代码 |
安装:apt-get install subversion(apt-get安装) 安装 : yum install subversion(yum安装) |
测试是否成功
代码如下 | 复制代码 |
svnserve –version |
svnserve,版本 1.6.6 (r40053)
编译于 Dec 12 2009,05:04:54
下列版本库后端(FS) 模块可用:
* fs_base : 模块只能操作BDB版本库。
* fs_fs : 模块与文本文件(FSFS)版本库一起工作。
Cyrus SASL 认证可用。
第二步:建立根目录
代码如下 | 复制代码 |
svnadmin create /backup/svn/newrepos ls repos |
测试一下
代码如下 | 复制代码 |
mkdir /test vi /test/a.txt |
输入 aaaaaa1
import导入文件
代码如下 | 复制代码 |
svn import /test file:///backup/svn/newrepos/some/project 启动SVN svnserve -d -r /backup/svn/newrepos/ –listen-host 211.124.27.20 |
但是在导入后,用来的目录树并没有转换成工作拷贝,为了开始工作,还是需要运行svn checkout导出一个工作拷贝。因为导入后,文件在版本库中是以特殊的形式存在db文件夹中的,不能以明文的方式查看。必须使用svn checkout导出工作副本(workcopy)才能以正常方式查看。
解惑:月小升初次看到file:// 这个结构以为是别人搞错了。file://这个模式以前在windows下老看见这路径,心想linux怎么会有这个东东,结构发现这个结构还就是SVN的用法。
代码如下 | 复制代码 |
svn checkout file:///backup/svn/newrepos/some/project /workcopy |
根目录下多了一个workcopy
成功了。
第三步:本地读取
本地试试直接命令行模式
代码如下 | 复制代码 |
svn checkout svn://211.124.27.20/ test |
下载成功了。
第四步:密码
用户和密码的设置
代码如下 | 复制代码 |
#去掉#[general]前面的#号 [general] #匿名访问的权限,可以是read,write,none,默认为read anon-access = none #认证用户的权限,可以是read,write,none,默认为write auth-access = write #密码数据库的路径,去掉前面的# password-db = passwd |
注意:所有的行都必须顶格,否则报错。
建议:为了防止不必要的错误,建议你直接用我上面的内容覆盖掉文件原来的内容
修改配置文件passwd。
代码
代码如下 | 复制代码 |
[users] yuexiaosheng = ******* |
重启SVN
不输入密码读取下
代码如下 | 复制代码 |
svn checkout svn://211.124.27.20/ test1 Authentication realm: 9d495645-ebf4-41af-b4cf-beee4fe0f067 |
显示没用权限。
带着用户登陆,需要这样写
代码如下 | 复制代码 |
svn –username=yuexiaosheng checkout svn://211.144.37.40/ test1 |
提示输入密码输入我的密码******
文件顺利下载了。
第五步
防火墙设置
svn默认端口是3690,你需要在防火墙上开放这个端口。
代码如下 | 复制代码 |
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT /sbin/service iptables save 停止SVN服务器:killall svnserve |