SVN
版本管理工具
介绍SVN
svn架构:
- 客户端:操作界面
- 服务器:
- 服务:操作库的内存中的程序.
- 库:硬盘上保存表记录的文件
SVN(Subversion)是一款版本管理工具,在当前的开源项目里(J2EE),几乎95%以上的项目都用到了 SVN。Subversion 项目的初衷是为了替换当年开源社区最为流行的版本控制软件 CVS,在 CVS的功能的基础上有很多的提升同时也能较好的解决 CVS 系统的一些不足。
SVN版本数据存储方式
BDB (Berkeley DB)
数据库方式
FSFS
文件方式 (推荐)
安装SVN
安装服务端
- 官方安装包,安装后需要通过命令行操作,适用于专业配置管理员使用。下载地址:http://subversion.apache.org/download.cgi
- 图形化服务端,适用于普通软件开发人员。下载地址:https://www.visualsvn.com/downloads/
svn服务端创建完成需要创建仓库,仓库中存放要版本控制的文件。
仓库中存放开发项目代码、文档等,需要创建一个工程目录。
branches:进行开发实验.
tags:记录每次上线版本代码.
trunk :用于放置开发版本,开发阶段都是基于该目录.
安装客户端
1、使用Subversion提供的客户端命令
使用方式:在命令行下输入命令操作。
2、使用Torotise图形化界面操作(推荐)
3、使用Eclipse等开发工具插件操作(推荐)
TortoiseSVN是 Subversion 的 Windows 扩展。它使你避免接触 Subversion 枯燥而且不方便的 Command Line。它完全嵌入 Windows Explorer,使用时只需在正常的窗口里右键操作就可以了。下载地址:http://tortoisesvn.net/downloads.html
客户端操作
检出、更新、提交
检出:
检出项目,复制项目的副本到本地。在要检出的目录中右键。
更新:
更新仓库的文件到本地,在检出目录或子目标或文件上右键 SVN Update。
提交:
如果是新文件,要先add,标记这个文件添加到服务器,在检出目录或要提交的目录右键 SVN Commit,提交。
其他操作
冲突处理:
两个客户端同时修改同一个文件, 改动同一个位置,发生冲突情况,如果当commit 遇到文件已经过时,说明另一个人可能改动过。
- db.properties 将本地和服务器合并到一起的文件 (不要直接看)
- db.properties.mine 我本地自己修改后的文件
- db.properties.r6 我修改之前的文件
- db.properties.r7 别人修改后的文件
手动Merge后,需要将编辑后冲突文件,标记为已经解决,再进行commit
eclipse客户端安装、操作
eclipse客户端安装
下载Subversion的eclipse插件
http://subclipse.tigris.org/servlets/ProjectProcess?pageID=p4wYuA
安装site.zip插件,安装完成,查看STS视图有SVN选项说明安装成功。
eclipse客户端操作
共享项目到svn
新建SVN仓库连接 , 切换“SVN资源库” 视图,url输入svn仓库位置。
共享项目到svn,点击Team,选Share Project。将svn管理项目检出到工作区
在“SVN资源库”中选中项目,点击检出。解决冲突
手动merge后,标记为解决重置用户名密码
删除C:\Users\”用户名”\AppData\Roaming\Subversion\auth\下的所有文件