一、安装使用SVN
1、安装步骤
Step 1:到官网下载SVN安装包,如TortoiseSVN
Step 2:一路选择下一步,完成安装过程
Step 3:右键单击想要进行版本控制的文件夹,选择SVN Checkout
2、SVN目录结构
SVN服务器端运行时,系统会为每个项目在服务器上建立一组目录,包括conf、db、hooks、locks。其中,conf存放服务器配置信息,db存放项目库数据,hooks包含了许多存放repository hook的脚本文件,locks包含用于锁定的文件。
二、SVN基本操作
1、更新
svn update
2、添加
svn add filename
3、提交
svn commit
4、删除
svn delete filename
5、查看状态
svn status
三、SVN高级操作
1、分支和标签
分支和标签是svn中的常用操作,可以有效地管理项目不同版本。
//创建分支
svn copy ^/trunk ^/branches/branchname -m "Create branchname "
//修改分支
svn merge ^/trunk ^/branches/branchname
//创建标签
svn copy ^/trunk ^/tags/tagname -m "Create tagname"
2、权限设置
可以通过权限设置来控制项目的读写权限,提高项目的安全性。
//添加用户
svnadmin create myproj
htpasswd.exe -cm myproj/passwd user1
//授权用户
svnserve.exe -d -r myproj
svn://localhost/myproj
3、钩子脚本
可以使用钩子脚本在svn提交或更新时执行一些特定操作,如发送邮件、解决冲突等。
//pre-commit脚本,在提交前检查版本库
#!D:/Program Files/TortoiseSVN/bin/sh.exe
svnlook author -r $2 /usr/local/svn/test | grep "username" > /dev/null
if [ $? -eq 1 ]; then
echo "You have no permission to commit!" >&2
exit 1
fi
四、SVN常见问题
1、解决错误:Working copy locked
该错误通常是由于svn.exe进程被卡住了,需要通过任务管理器杀掉svn进程,然后重试即可。
2、解决错误:E155004: Run 'svn cleanup'
该错误通常是由于SVN仓库中有未完成的操作,需要使用svn cleanup命令进行清理。
svn cleanup
3、解决错误:E175002: OPTIONS请求失败
该错误发生在提交时,通常是由于SVN服务未启动,需要开启SVN服务来解决。
svnserve -d -r myproj