一. 安装svn 服务器(操作系统centos)
yum install subversion
可以通过 subversion -v 命令查看是否安装成功
如果提示没有subversion 命令 是因为我们还需要创建svn 库
执行命令:
mkdir -p /svn/repos
svnadmin create /svn/repos
cd /svn/repos
ls
可以看到多出了许多文件和文件夹::conf db format hooks locks README.txt
此时svn服务器的安装基本完成了。
二. svn配置
cd /svn/repos/conf
ls
可以看到文件:authz passwd svnserve.conf
1.首先配置passwd文件
vi passwd
添加类似账户
m0sh1 = admin
#格式为 用户名 = 密码
保存退出
2.配置authz文件
添加内容
[/]
m0sh1
#这两句表明 用户m0sh1 对整个目录都有访问的权限(你可以自己去设定更详细的目录权限)
3.配置 svnserve.conf
anon-access = none # 使非授权用户无法访问
auth-access = write # 使授权用户有写权限
password-db = password # 密码文件
authz-db = authz # 访问控制文件
realm = m0sh1Svn
采用默认配置. 以上语句都必须顶格写, 左侧不能留空格, 否则会出错.
三. 开启服务进行测试
启动svn
svnseve -d -r /svn/repos
#如果已经运行了svn 还想再创建一个,可以通过设定不同端口来解决此问题
svnseve -d -r /svn/repos2 --listen-port 3313
启动成功后我们就可以通过本地的 TortoiseSVN 连接了(TortoiseSVN自行搜索下载即可)
svn 链接地址:
svn://server address (如果指定端口需要添加端口 :端口号)
四. 创建项目
1.你可以直接在这个svn server 所在的服务器上通过命令
svn improt project 导入项目
svn add file 添加文件(目录)
2.在windows 下使用 TortoiseSVN 工具 选中项目目录右键点击import 留下message 提交即可
3.在windows 下新建目录右键鼠标选择checkout,然后将项目文件复制到此目录,最后右键commit即可(留下message)
五. svn 版本管理
SVN 的结构一般是这样的:
svn:// your project
+trunk/
app/
lib/ ...
+branches/
+braches_1.0/
+tags
+tag_release_1.0
当有开发需求的时候,从主干(trunk)上做分支(branch),当一个分支开发完毕,测试无误的情况下应该
合并到trunk上,如果在trunk上有问题可以在trunk做一些修改。当完成一个阶段,有一个可以发布的稳定项目
版本就可以打个tag了。
trunk中放置的始终都应该是一个稳定的版本, 在分支开发的开发人员应该经常和trunk同步(trunk merge 到branch
这不会改变trunk的代码),否则你会和trunk版本越来越远。分支合并到主干的时候要进过仔细测试后才能提交到commit
(但是commit 又应该尽快,防止别人也修改了trunk)
当然整体的流程应该依据实际情况设定。 svn的merge 可以单独搜索相关资料。^ _ ^
下节会简单总结一下 svn hook的使用。
例如上面的假设是一个web项目,trunk更新,同时web测试服务器也更新trunk代码。