1、首先安装SVN这个软件
2、在home目录下创建一个名为svn的文件夹(文件夹的名字随便起)
mkdir /home/svn
3、创建数据仓库(可以根据需要创建多个)
svnadmin create /home/svn/test
4、启动svn网络服务
svnserve -d -r /home/svn
/home/svn指定svn数据仓库存放的目录位置
5、设置svn: 方式的访问权限
在每个数据仓库目录下都有一堆目录:
进入 conf 并打开 svnserve.conf 这个文件,
找到以下几行,并把前面的注解符号 ‘#’ 去掉,
注意千万在每行的前面别留任何空格。
anon-access = none #表示不可匿名访问
auth-access = write
password-db = passwd
authz-db = authz #编辑authz 制定管理员组
例如:
[groups]
admin = admin
userGp = tone,tone1,tone2
[/]
admin = rw
@userGp =r #指定组前面必须加上@
[/home/svn/test]
@userGp =rw
*=r
说明:即admin组的用户为admin,
admin组有rw(读写权限) userGp的用户有r(读权限)
(2)passwd用于设置svn帐号和密码
例如:admin=123
其中admin是帐号名,而123是密码。
6、测试
例如:svn://127.0.0.1/test
例如:svn://www.xxx.com/test
7、上传代码
svn import -m "import" /home/myproject svn://192.168.213.31/svn/test
8、更换svn地址
svn switch --relocate [url]http://xxx.xxx.xxx.xxx/xxx[/url](旧的svn地址) [url]http://xxx.xxx.xxx.xxx/xxx[/url](新的svn地址)
【问题】
发现svn 不能提交和更新,报svn: E000061: Unable to connect to a repository at URL这样的错误,
后来查了些资料,原来是svn的端口没有打开,svn的默认端口是3690,
在ubuntu里查看端口打开情况,命令是 netstat -anp,把svn服务重新启动下就可以了
SVN中的checkout与export的区别
1、check out跟check in对应,export跟import对应。
2、check out导出获得文件后,导出的文件仍处于SVN版本控制中,与版本库保持关联,
比如你可以进行Svn Update或者Svn Commit操作。
同时导出文件夹下有一个.svn的隐藏文件夹,存储着一些版本的元数据信息。
3、export 简单导出一个版本的数据,导出的文件脱离SVN版本控制,修改后无进行Update和Commit操作。
导出文件夹下没有.svn目录。