SVN配置管理系统的搭建、使用和维护.ppt
《SVN配置管理系统的搭建、使用和维护.ppt》由会员分享,可在线阅读,更多相关《SVN配置管理系统的搭建、使用和维护.ppt(80页珍藏版)》请在三一办公上搜索。
1、2009.2.27,SVN配置管理系统搭建、使用和维护,TSD,Copyright 2008 by Neusoft Group.All rights reserved.,目 录,第一部分:SVN的基本概念配置管理环境搭建客户端TSVN基本功能的介绍及使用方法Eclipse下SVN的使用第二部分SVN系统日常维护配置库规划分支策略,目 录,第一部分SVN的基本概念配置管理环境搭建客户端TSVN基本功能的介绍及使用方法Eclipse下SVN的使用第二部分SVN系统日常维护配置库规划分支策略,2009.2.27,版本库(Repository)工作拷贝版本模型 复制-修改-合并方案 锁定-修改-解锁方
2、案 如何选择?修订版本,SVN的基本概念,2009.2.27,SVN的基本概念,版本库(Repository)SVN的核心是版本库,储存所有的数据,版本库按照文件树形式储存数据包括文件和目录,任意数量的客户端可以连接到配置库,读写这些文件。通过写数据,别人可以看到这些信息;通过读数据,可以看到别人的修改。版本库通常是配置管理中的配置库 最特别的是 Subversion 会记录版本库中的每一次更改,不仅针对文件也包括目录本身,包括增加、删除和重新组织文件和目录。,2009.2.27,SVN的基本概念,工作副本 与位于版本库相对应的是每个人的工作空间,它是每个程序员工作的地方,程序员从配置库拿到源
3、代码,放在本地作为工作副本,在工作副本上进行查看、修改、编译、运行、测试等操作,并把新版本的代码从这里提交回配置库库中。工作副本的结构,2009.2.27,SVN的基本概念,版本模型 复制-修改-合并方案(Subversion默认的模式)在这种模型里,每一个客户读取项目配置库建立一个私有工作副本。用户并行工作,修改各自的工作副本,最终,各个私有的复制合并在一起,成为最终的版本,这种合并通常可以由系统辅助操作,但是最终要靠人工去确定正误。锁定-修改-解锁方案 在这样的模型里,在一个时间段里配置库的一个文件只允许被一个人修改。如何选择?Subversion 缺省使用复制-修改-合并方案,如果你有不
4、可合并的文件,或者你只是想实行强制管理策略,可选择锁定-修改-解锁方案。,2009.2.27,SVN的基本概念,修订版本 在版本库中,每一次提交被当作一次原子事务操作。每当版本库接受了一个提交,文件系统进入了一个新的状态,叫做一次修订(revision),每一个修订版本被赋予一个独一无二的自然数,初始修订号是0。全局修订号:不像其他版本控制系统,SVN的修订号是针对整个目录树的,而不是单个文件。每一个修订号代表了一次提交后版本库整个目录树的特定状态。,目 录,SVN的基本概念配置管理环境搭建客户端TSVN基本功能的介绍及使用方法Eclipse下SVN的使用SVN系统日常维护配置库规划分支策略,
5、2009.2.27,配置管理环境搭建,Subversion相关软件配置管理环境搭建 服务器安装 客户端安装,2009.2.27,Subversion相关软件,基于VisualSVN Server和TortoiseSVN的版本控制系统VisualSVN Server:免费。包含了所有需要的安装和配置,用于Windows平台:Subversion,Apache,管理端口。可以使用任何SVN客户端与其连接,或者直接通过浏览器快速浏览配置库。TortoiseSVN:免费。SVN的客户端工具,和资源管理器完美集成。使用简单方便。,2009.2.27,配置管理环境搭建:服务器配置,服务器软件下载:http
6、:/操作系统要求:Windows XP Windows 2003 Server Microsoft Windows Vista Windows 2008 Server 硬件要求:Pentium 500MHz or greater 128 MB RAM or greater 30 MB hard drive space,2009.2.27,配置管理环境搭建:服务器配置,1.创建管理员帐户 2.创建Repository(版本库)3.测试,2009.2.27,配置管理环境搭建:服务器配置,Repository版本库布局 推荐建立:trunk,tags,branches三个目录,他们不是必须的,但其设
7、置贴合SVN功能,在使用中你将会发现这样设置的好处。Trunk:最新的代码;Tags:Subversion使用过程中创建的标签;Branches:保存Subversion的工作分支。导入数据到版本库在你的硬盘上创建一个空的文件夹在那个文件夹下创建你想要的顶级目录通过在那个文件夹右键,选择TortoiseSVN 导入.将这个结构导入到版本库中。注意导入路径的选择,2009.2.27,配置管理环境搭建:客户端安装,客户端软件下载Tortoisesvn、中文语言包:http:/资源管理器完美集成,目 录,第一部分SVN的基本概念配置管理环境搭建客户端TSVN基本功能介绍及使用方法在Eclipse中使
8、用SVN第二部分SVN系统日常维护配置库规划分支策略基线策略,2009.2.27,客户端TSVN基本功能介绍及使用方法,TSVN的图标说明TSVN的使用基本流程TSVN基本操作访问版本 CheckOut(检出)Show log(显示日志)Update(更新)Commit(提交)Revert(还原)ADD(添加)Rename(改名),Add to Ignore List(忽略文件)删除认证数据得到历史版处理冲突创建分支与切换SVN的其他功能创建分支与切换SVN的其他功能,2009.2.27,TSVN图标说明,2009.2.27,一个新检出的工作副本使用绿色的对勾。表示Subversion状态正常
9、.当我们开始编辑一个文件后,图标将变成红色感叹号。通过这种方式,可以很容易地看出我们对哪些文件进行了修改操作,但是还没有提交到版本库中;如果在提交的过程中出现了冲突,图标将变成黄色感叹号。如果我们拥有了一个文件的锁,并且Subversion状态是正常,这个重载图标将提醒我们:如果不使用该文件的话,请进行释放锁操作,允许其他成员提交对该文件的修改,TSVN图标说明,2009.2.27,文件或文件夹被版本控制忽略。该文件或文件夹没有纳入版本控制,并且也没有被忽略。这个图标表示当前文件夹下的某些文件或文件夹已经被计划从版本控制中删除,或是该文件夹下某个受控的文件丢失了。加号告诉我们有一个文件或是目录
10、已经被计划加入版本控制。如果你给一个文件设置了svn:needs-lock属性,Subversion 会让此文件只读,直到你获得文件锁。具有这个重载图标的文件来表示你必须在编辑之前先得到锁。,TSVN图标说明,2009.2.27,TSVN的使用基本流程,2009.2.27,TSVN基本操作:访问版本库,VisualSVN Server使用https:/.访问,2009.2.27,TSVN基本操作:CheckOut(检出),作用:将版本库中的内容检出到本地工作副本步骤:1.新建一个空文件夹;比如:E:Proj_trunk 2.在此目录中点击右键-SVN Checkout.,2009.2.27,C
11、heckOut的注意项,检出深度:1.全递归(默认选择)检出完整的目录树,包含所有的文件或子目录。2.直接节点,包含目录 检出目录,包含其中的文件或子目录,但是不递归展开子目录。3.仅文件子节点 检出指定目录,包含所有文件,但是不检出任何子目录。4.仅此项。只检出目录。不包含其中的文件或子目录。,省略外部:如果项目含有外部项目的引用,而这些引用我们不希望同时检出,请选中忽略外部项目复选框。如果选中了这个复选框,更新的时候要使用命令”更新至版本Update to Revision.”,2009.2.27,TSVN基本操作:Showlog(显示日志),2009.2.27,TSVN基本操作:Upda
12、te(更新),作用:获取其他用户对文件进行的修改,与自己对文件进行的修改进行合并,保证本地的文件总是最新的。SVN将显示出更新的文件和更新的次数注意:经常更新工作副本,确保得到最新的修改。,2009.2.27,TSVN基本操作:Commit(提交),对工作副本进行编辑后提交到SVN在右键菜单中点击SVN 提交(C)提交前写好信息,点击确定,2009.2.27,Commit(提交)的注意项,提交之前要确保你的工作副本是最新的,避免冲突使用TortoiseSVN 更新使用TortoiseSVN 检查更新,看看哪些文件在本地或是服务器上已经有了改动提交文件与提交文件夹的区别当你提交文件时,提交对话框
13、只显示你选择提交的文件。当你提交文件夹,提交对话框将自动选择该文件夹中有改动的所有文件。如果你忘记你建立了一个新文件,提交文件夹将使你可以找到它。填写好的日志信息日志信息主要记录的是每次的修改内容。建议把一些重要数据、关键操作写到日志信息中。(修改人和提交时间由软件自动记录,无需人工写入日志信息),2009.2.27,TSVN基本操作:ADD(添加),选中文件/文件夹(在新文件/文件夹所在父文件夹点击右键),在菜单中选择“添加Add”命令。不需要受SVN控制的文件请取消打钩。确认添加执行提交操作,2009.2.27,TSVN基本操作:Delete(删除),选中文件/文件夹,在菜单中选择“删除(
14、D)”命令。确认删除执行提交操作。如何找回已删除的文件或目录?在删除的文件或目录所在 的目录中打开日志,找出删除的版本和文件右键浏览版本库,选择删除的文件或目录,右键并选择“复制到工作副本”,2009.2.27,TSVN基本操作:Revert(还原),作用:撤销本地所有未提交的修改注意:还没有执行Commit操作之前执行此命令才可以,否则无效,2009.2.27,TSVN基本操作:Rname(改名),对文件/目录进行Subversion控制下的改名操作,用此功能对文件/目录进行改名后文件仍处于SVN的控制下并保持连续的变更信息。注意:必须使用TortoiseSVN的重命名功能,直接在资源管理器
15、中进行重命名SVN无法监控。,2009.2.27,TSVN基本操作:删除认证数据,步骤:点击右键 选择设置 以保存数据 清除认证数据,2009.2.27,TSVN基本操作:得到历史版本,工作副本右键显示日志选择所需的版本号保存存版本至,2009.2.27,TSVN基本操作:AddtoIgnoreList(忽略文件),添加忽略文件 右键一个单独的未进入版本控制文件TortoiseSVN(加入忽略列表)Add to Ignore List,会出现一个子菜单允许你仅选择该文件,或者所有具有相同后缀的文件。删除忽略文件:如果你想从忽略列表中移除一个或多个条目,右击这些条目,选择TortoiseSVN
16、从忽略列表删除。已进入版本控制的文件或目录不能够忽略,2009.2.27,TSVN基本操作:处理冲突,冲突的产生产生原因:两个开发人员修改了文件中相同的几行产生步骤:commit时出现错误提示:“文件或目录“README.txt”已经过时;请先更新”更新后出现“至少还有一个的文件处于冲突状态”红色警告。svn自动在当前目录产生几个文件记录冲突文件解释:filename.mine:你更新前的文件,没有冲突标志,只包含你最新更改的内容。filename.rOLDREV:这个是你做更新操作以前的BASE版本,就是你在上次更新之后未作更改的版本。filename.rNEWREV:这是Subversio
17、n从服务器刚刚收到的版本。这个版本就是版本库的HEAD版本,2009.2.27,TSVN基本操作:处理冲突,面对文件冲突,我们可以选择以下两种方式解决冲突使用工具解决冲突用revert放弃所做的修改,2009.2.27,使用工具解决冲突选择冲突文件-”编辑冲突”出现merge界面,分为”远程文件”、”本地文件”和”已合并”3部分,表示”别人修改的内容”、”我修改的内容”和”合并后的结果”3部分。,TSVN基本操作:处理冲突,2009.2.27,TSVN基本操作:处理冲突,合并目标是将”别人修改的内容”和”我修改的内容”有取舍地合并起来,形成”合并后的结果”。一般分为4种情况:保留”我的修改”,
18、舍弃”别人的修改”。鼠标右键点击Mine框的相应行,点击”使用此文件块”。舍弃”我的修改”,保留”别人的修改”。鼠标右键点击Theirs框的相应行,点击”使用此文件块”。同时保留”我的修改”和”别人的修改”,并将”我的修改”放在前面。鼠标右键点击Mine框的相应行,点击”优先使用本地而非远程文件块”。同时保留”我的修改”和”别人的修改”,并将”别人的修改”放在前面。鼠标右键点击Mine框的相应行,点击”优先使用远程而非本地文件块”。合并完成,Ctrl+S存盘,退出。,2009.2.27,TSVN基本操作:处理冲突,选择SVN还原(revert)放弃自己所做的修改,2009.2.27,TSVN基
19、本操作:处理冲突,通过上面所说的方法,解决冲突后要选择已解决的(resolved)解决后,带问号的三个文件将自动删除最后选择commit提交到SVN,2009.2.27,TSVN基本操作:处理冲突,关于冲突的建议修改文件之前,先进行一次update操作修改完成后,及时commit,不要在本地停留过长时间在多位团队成员协作时,尽量修改自己撰写的部分,尽量不要修改不属于自己撰写的部分出现冲突很正常,可以通过前面的方法解决,不要相互覆盖,2009.2.27,TSVN基本操作:获取标签和分支中的文件,什么是分支?什么是标签?分支版本控制系统的一个特性是能够把各种修改分离出来放在开发品的一个分割线上。这
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- SVN 配置管理 系统 搭建 使用 维护

链接地址:https://www.31ppt.com/p-2872006.html