项目管理在项目开发活动中起到非常重要的作用,而对于初学者来说学习有一定的难度,且不说如何使用,就是搭建过程恐怕也要费一般周折,介于此下面就通过图解的方式一步一步详细的教大家如何使用SVN,你只要耐心的一步步去实践就能掌握
SVN服务器安装
1、下载CollabNetSubversion-server-1.5.6-2.win32
2、执行安装程序CollabNetSubversion-server-1.5.6-2.win32 ---------SVN服务器软件 安装完成后,右键菜单出现”SNV Checkout”(可将服务器中的项目签出到本地),如图所示
SVN客户端安装
1、下载TortoiseSVN-1.5.9.15518-win32-svn-1.5.6.msi
2、执行TortoiseSVN-1.5.9.15518-win32-svn-1.5.6.msi---------SVN客户端软件 执行LanguagePack_1.5.9.15518-win32-zh_CN.msi------------SVN客户端软件汉化包(可选)安装完成后,右键菜单出现”TortoiseSVN”,如上图所示
SVN服务配置
1、方案1:使用命令和手动修改配置文件 如果感觉麻烦,可跳过后面的使用方案2 1、 执行创建目录 svnadmin create c:\ Repositories 2、 打开conf目录下的authz文件 添加组及其用户accp=user01,user02 为组用户设置目录的读写权限,组前面要用@符,第一个[/]表示目录,[/]@accp=rw 3、 编辑passwd文件 格式:用户名=密码 user01=1234 user02=1234 4、打开svnserverconf 取消以下几个注释 password-db = passwd authz-db = authz 5、 开机自动启动SVN sc create MySVNServer binpath= "\"C:\ProgramFilesSubversion\svnserve\svnserve\svnserve.exe" --service -r c:\ Repositories" displayname= "SVNService" depend= Tcpip start= auto 6、启动服务: C:\>net start svnservice SVNService 服务正在启动 . SVNService 服务已经启动成功。 停止服务: C:\>net stop svnservice SVNService 服务正在停止. SVNService 服务已成功停止。 删除创建的服务 C:\>sc delete svn svnservice
2、方案2:使用可视化工具 方案1的确比较麻烦,我们可以使用VisualSVN-Server-1.6.3.msi----------SVN服务配置可视化工具 1、下载 2、执行VisualSVN-Server-1.6.3.msi安装程序 3、VisualSVN-Server的使用 (1)创建版本库 主键面,表明SVN服务已运行,
3、 Repositories表示版本库是svn文件共享的核心,它储存所有的数据,并对数据进行版本化管理。按照文件树形式存储数据——包括文件和目录。安装SVN Server 时设置版本库的路径,默认c:\ Repositories。SVN使用URL来识别版本库中的资源 在Repositories下创建Repository组织不同项目的版本库,例如:
4、 (2)创建组和用户 创建用户并设置密码,如图所示:
5、创建组并添加用户,如图所示:
6、 为用户设置版本库的读/写权限,选择其中某个版本库—>右键属性,弹出权限设置窗口 如图所示:
SVN客户使用
1、import入库操作 将初始的项目(项目目录结构、接口、通用组件、静态页面等)导入版本库,操作如图:
2、 在URL of repository中输入或选择URL(对应版本库中的资源),注意URL所对应枣释现轫版本库中的资源的必须存在(如上图所示),若不存在要首先在VisualSVN中创建(或使用命令方式svnadmin create c:\ Repositories\mycrm),创建成功后c:\ Repositories\mycrm 产生一些版本库相关的系统文件和目录,如下所示:
3、签出操作 有两种方式check out 和 export,区别在于: ①export 方式仅仅是将版本库的文件拷贝到本地而已。 ②check out 方式获得文件后,本地文件仍处于SVN版本控制中,这一点很重要。这也是主要的一种方式 在本地目录下,单击右键选择菜单命令,如图所示
4、执行Check out 弹出对话框,如图所示
5、提交添加新文件 在项目中增加一个新文件,例如在crm项目中添加一个login.html文件,新增的文件的图标为,表示该文件没有入库SVN服务器无法识别,选择该文件单击鼠标右键执行add命令,将文件入库如图所示
6、提交添加新文件 在项目中增加一个新文件,例如在crm项目中添加一个login.html文件,新增的文件的图标为,表示该文件没有入库SVN服务器无法识别,选择该文件单击鼠标右键执行add命令,将文件入库如图所示
7、更新操作(訇咀喃谆将SVN服务器中所有版本变化更新到本地) 对于其他用户(指不是提交变化的用户),可执行SVN update命令完成将SVN服务器发生版本变化的文件更新到本地 如掬研疔缎图所示: 通常我们(记住每个人就是SVN的本地客户)在工作时,会不断执行SVN Update命令以获取SVN服务器中最新的文件,从而获得其他人的变更。这也是作为一个项目版本管理软件最重要的功能之一——及时通知项目的变更
8、版本冲突的相关操作 冲突是指团队协同工作时,当多巅貅晌陔人修改同一个文件,造成本地文件与SVN系统中的文件版本不一致,而导致文件无法提交的情况。例如:user01对temp.txt文件进行粕盘镱嘧编辑 添加“User01的数据信息”,User02也对temp.txt文件进行修改添加“User02的数据信息”,User01完成后执行SVN Commit,这时User02在执行SVN Commit提交就会产生冲突而提交失败,如图所示
9、避免冲突方法——加锁文件 多人同时操作同一个文件是产生冲突的根本原因。 为了减少冲突的发生避免一些不必要的麻烦,通常在懈吡赜痖变更文件之前执对该文件行一次SVN Update操作,但这样冲突还是会发生的,一个比较有效的方法是对文件加锁。其原理很简单在对文件变更之前先对文件上锁,这是有两种可能若文件有锁(表明有人在编辑)加锁失败,若文件没有锁则加锁成功。一个文件上锁后除了自己别人是不能对文件编辑的,当我们编辑完成之后再解锁,然后别人就可以加锁编辑了。这样就有效的避免了多人同时操作同一个文件时产生冲突
10、版本还原 在开发中有时我们希望将文件的变更恢复到之前某个版本,这也是一个项目管理软件必备的功能,对于SVN执行Update to revision.. 命令即可 比如我们把temp.txt恢复到最初的状态,目前文件的内容如下图所示:
Ecplise SVN客户端插件安装
1、安装 具体操作:
2、从SVN服务器导入项目 具体操作:
3、提交文件更新 选择文件单击右键,选择team提交,即可
4、更新操作(将SVN服务器中所有版本发生变化的更新到本地) 选择文件或目录单击右键,选择team-à更新,即可。