火龙果软件-SVN环境搭建与使用ppt课件_第1页
火龙果软件-SVN环境搭建与使用ppt课件_第2页
火龙果软件-SVN环境搭建与使用ppt课件_第3页
火龙果软件-SVN环境搭建与使用ppt课件_第4页
火龙果软件-SVN环境搭建与使用ppt课件_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官) 学完本门课程,你能够: 自己搭建SVN开发环境 利用SVN管理系统数据资源 利用SVN完成基于软件项目开发的管理和部署 在团体及小组开发中利用SVN完成代码的版本控制” 如果十年前Sun没有做Java,人们便会写.Ne

2、t程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官) 搭建SVN开发环境,完成SVN资源库配置 使用SVN创建标准软件研发目录 使用SVN完成数据导入、导出、检出、提交、更新” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官) 理解SVN的作用及重要性 掌握搭建SVN服务器并完成资源库配置 掌握标准软件研发目录结构的构建 掌握SVN中数据导入、导出、检出、提交与更新等操作

3、理解与领悟提交与更新的核心执行流程,会处理提交与更新过程中发生的冲突” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)5 SVN(Subversion)是近年来崛起的版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件 SVN有如下优点:A、管理方便,逻辑明确,符合一般人思维习惯B、易于管理,集中式服务器更能保证安全性 C、代码一致性非常高 ” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序

4、,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)61、双击svn-1.4.6-setup.exe文件,安装SVN服务软件(安装目录自行选择)2、安装好之后选择一个适合作为资源库管理的目录(如:F:/SVNRoot),这个目录将作为SVN的根目录3、打开命令行控制窗口并切换到该目录下,然后执行以下命令:F:/SVNRootsvnadmin create scxh注:scxh是资源库(仓库)的名字,可以自己定义;该命令执行之后会在F:/SVNRoot文件夹之下自动创建一个名叫scxh的目录,以后提交的数据将被压缩存储在该文件夹下的db/r

5、evs文件夹之下4、打开仓库文件夹(scxh)下的子文件夹conf,配置svnserve.conf、passwd、authz三个配置文件,配置如下:” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、svnserve.conf配置文件:anon-access=none#匿名用户不能访问SVN,它有三种取值:none/read/writeauth-access=write#授予访问权限者可以读和写password-db=passwd#指定密码文件位置,默认

6、为当前目录的passwd文件,可以使用绝对路径指定authz-db=authz#指定权限控制文件位置,默认为当前目录的authz,可以使用绝对路径指定realm=Lenovo_liyongfu#指定登录时弹出的验证域信息,你也可以不用设定它” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)82、passwd配置文件:usersadmin = admin #用户名=密码root = 123456liyongfu=123456lixiang=lixiangli

7、gang=liganglixiaolong=lixiaolong” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)3、authz配置文件:groups #定义组admin = admin,root #组名=用户名1(或组名1),用户名2(或组名2).super=liyongfu,lixiangnormal=super,ligang,lixiaolongscxh:/ #定义资源库的总访问权限admin = rw #组名(用户名不用加)=rw(三种取值;r:只

8、读;w:只写;rw:读和写)* = #除了上面分配的权限以外其它所有用户对该资源无任何访问权限scxh:/chanel #定义资源库下chanel子目录的访问权限super = rw #super组成员对该资源有读写权限normal=r #normal组成员对该资源有只读权限* =r #除了上面分配的权限以外其它所有用户对该资源有只读权限注意:权限是递归的,如果某个用户对A目录有读写权限则该用户对A目录下的所有子目 录及其深层次子目录都有读写权限” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Sco

9、tt McNealy(Sun首席执行官)1、使用sc create命令注册SVN服务,具体命令使用格式可以参照installSVN.bat文件,如果是本机SVN可以设置IP为回环地址,如果是远程SVN则设置IP为真实服务器的IP地址2、取消服务注册: sc delete svnName 或 双击uninstallSVN.bat文件 注:svnName是SVN注册时所取的服务名字3、启动SVN服务: sc start svnName 或 net start svnName4、停止SVN服务: sc stop svnName 或 net stop svnName” 如果十年前Su

10、n没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、SVN采用C/S模式来完成SVN数据资源的版本管理,双击TortoiseSVN-3595-win32-svn-1.5.1.msi文件安装SVN客户端,SVN客户端安装好之后将自动将SVN相关功能关联到右键菜单中2、SVN资源管理器的访问在任何一个地方点击鼠标右键选择TortoiseSVNRepo-browser在弹出的对话框地址栏上输入你要访问的SVN地址,该地址以svn开头(SVN协议),格式为:svni

11、p:3690/scxh/ (scxh为你自己创建的仓库名字)3、SVN资源管理器操作使用具备scxh资源库管理权限的用户登录到SVN服务器,在需要导入数据的特定目录下点右键选择Create folder可以在SVN上创建一个文件夹,选择delete可以删除一个文件夹(包括非空文件夹),双击某个文件夹可以在右侧查看该文件夹下的子目录和文件列表” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、在软件开发环境中,有一套成熟的标准SVN目录结构,那就是在每个仓

12、库下面都有trunk、branches、tags三个目录,trunk目录称为主干,它是软件开发中用于保存主版本的目录,branches目录称为分支目录,它是软件开发中用于保存模块分支的目录,同时也是bug的补丁目录,tags是软件发布之后用于归档阶段(里程碑)版本的目录2、软件开发流程有两种,第一种是在主干上进行开发、测试、打包、发布(上线)、归档。这种模式中如果线上存在bug则立即从归档中拷贝一个副本到分支进行补丁修正,最后合并到原主干中;另一种是按业务模块在分支上进行开发,开发完成之后合并到主干进行测试、打包、发布(上线)和归档。该种模式下如果线上存在bug则立即在分支上调整相应模块的bu

13、g,然后再转入原主干进行合并” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)步骤一:在SVN服务器上创建需要接收数据的SVN目录 在任何一个地方点击鼠标右键选择TortoiseSVNRepo browser登录SVN在需要导入数据的特定目录下点右键选择Create f

14、older新建一个用于接收本地数据的目标SVN目录,退出SVN界面步骤二:将本地数据上传到SVN服务器目录下右键点击需要上传数据所在目录,在弹出菜单中选择TortoiseSVNImport,在弹出框的URL地址栏上输入数据导入到的目标SVN路径并点击确定完成数据导入操作注意:操作是将选定目录中的数据(不包括选定的目录本身)导入到目标SVN路径下操作的SVN目录必须要具备读写权限,否则操作将失败导入操作也可以通过本地数据(文件或文件夹)的拖放来实现” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Sco

15、tt McNealy(Sun首席执行官)步骤一:在本地创建需要接收SVN数据的目录 此操作非常简单,如果创建文件夹的操作你都还不会则建议你回去再继续学习一下计算机基础内容步骤二:将SVN服务器目录下的数据下载到本地右键点击下载数据需要保存的目录,在弹出菜单中选择TortoiseSVNExport,在弹出框的URL地址栏上输入数据导出的目标SVN路径并点击确定完成数据导出操作注意:操作是将选定SVN目录中的数据(不包括选定的SVN目录本身)导出到本地路径下操作的SVN目录至少要具备只读权限,否则操作将失败导入导出操作也可以通过本地数据(文件或文件夹)的拖放来实现” 如果十年前Sun没有做Java

16、,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)步骤一:在本地创建需要接收SVN数据的目录步骤二:将SVN服务器目录下的数据下载到本地右键点击下载数据需要保存的目录,在弹出菜单中选择SVN Checkout.,在弹出框的URL地址栏上输入数据检出的目标SVN路径并点击确定完成数据检出操作注意:操作是将选定SVN目录中的数据(不包括选定的SVN目录本身)检出到本地路径下操作的SVN目录必须要具备读写权限,否则操作将失败检出与导出的区别在于检出的数据是添加了版本的受控数据,而导出的数据是没有

17、版本控制的” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、本地版本:指本机中当前文件或文件夹数据,这些数据只有终端用户自己才能操作到2、检出版本:数据从SVN服务器上被检出之后被复制成两份,一部分放置于SVN客户端缓存中,被称为检出数据或检出版本,另一部分数据被放置在本地提供给用户操作,称为本地数据或本地版本,刚检出的数据其检出数据与本地数据是完全一致的,此时SVN使用绿色勾选标记本地数据;当用户修改了本地数据之后将造成本地数据与检出数据不一致,此时

18、本地数据被标记成红色叹号状态3、最终版本:在多个用户同时共享和操作同一份SVN服务器上的数据时,某个用户在检出数据之后,另一些用户随后提交了该同一份数据的更改则SVN服务器上该数据的最高版本称之为最终版本,显然最终版本=检出版本;即:检出版本在检出之后不发生变化,它是相对于终端用户而言的,而最终版本则是相对于SVN服务器的,各个终端用户都可以提交数据更改共享数据的最终版本3、最高版本:如果用户将本地数据进行修改并提交了修改后的结果则SVN服务器上会将该修改的数据更新到当前SVN服务器上所有数据的最高版本加1最高版本也是相对于服务器的,最高版本是SVN服务器上所有文件的最高版本” 如果十年前Su

19、n没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、绿色勾选:指本地版本与检出版本数据是一致2、红色叹号:指本地版本与检出版本数据不一致3、黄色叹号:指更新时发生修改冲突,文件中标记本地修改与SVN上修改发生重叠且不一致的修改点(这种情况一般是发生在对标记为红色叹号的文件进行更新时所致,正常的流程是每次修改前先进行更新)4、蓝色问号:表示该文件处在SVN版本控制上下文中,但是本地SVN缓存中却没有该文件的缓存记录,这实际上意味着该文件在SVN服务器上不存在,需要对其纳入版

20、本监控,操作是在该文件上点击鼠标右键选择TortoiseSVNAdd.5、蓝色加号:表示该文件已经纳入版本监控但是SVN服务器上还没有该文件,这意味着你需要提交该文件以保存该文件到SVN服务器上,操作是使用鼠标右键点击该文件选择SVN Commit.6、红色叉号:表示本地已经将此文件删除,但是SVN上尚存在该文件,这实际上意味着你需要提交一次以删除SVN上的数据并与你本地保持同步” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、对于导出的数据来讲,它们

21、属于非受控数据,没有所谓提交和更新的概念2、对于检出的数据来讲,它们是受版本控制的数据,如果我们对检出的数据做了修改并希望将数据的修改结果保存到SVN服务器上面去则需要用到数据的提交,数据提交操作如下:在需要提交的数据(文件或文件夹)上点鼠标右键SVN Commit.就可以将数据的修改结果保存到SVN服务器上3、检出的数据在被修改之后会被SVN自动标记成红色叹号,红色叹号标记表示当前的本地数据与SVN检出版本数据不一致,如果数据被标记为绿色勾选则表示当前的本地数据与检出版本的数据是一致的4、数据提交执行流程:数据被提交时将检测本地数据与检出数据是否一致,如果是一致的则SVN将忽略此操作并响应数

22、据无修改的提示信息,如果本地数据与检出数据不一致则与SVN服务器上该文件的最终版本进行比较,如果版本号相同则将修改结果保存到SVN服务器上,同时将版本号变成SVN服务器的最高版本,如果不相同将产生版本号冲突并返回异常提示消息(这实际上意味着你需要先更新该文件再修改最后提交),数据提交流程如下:” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)” 如果十年前Sun没有做Java,人们便会写.Net程序,如果他们写.Net程序,他们就是为windows写程序,

23、而不是为Sun的设备写程序”Scott McNealy(Sun首席执行官)1、对于导出的数据来讲,它们属于非受控数据,没有所谓提交和更新的概念2、对于检出的数据来讲,它们是受版本控制的数据,而检出的数据在SVN服务器上是共享的,其它用户可以随时更改并提交这些数据,如果我们在一段时间之后需要获取最新的SVN数据则需要将本地已经检出的数据做一次更新,在需要更新的数据(文件或文件夹)上点鼠标右键SVN Update就可以将SVN上的最新数据更新到本地3、数据更新执行流程:数据被更新时将检测本地数据与检出数据是否一致,如果数据一致将SVN服务器上的数据和版本号直接更新到本地,如果不一致则检测SVN服务器该共享文件的最高版本修改内容是否与本地修改数据发生重叠,如果没有发生重叠则将SVN服务器该文件的最终版本更新到本地同时提交本地修改的数据到SVN服务器上成为SVN最高版本,如果修改数据与SVN上该文件的修改发生重叠则产生更新冲突,SVN在发生更新冲突时将产生一个黄色三角形叹号的冲突文件和三个带有蓝色问号的提示文件;冲突文件标识出SVN上该文件与本地文件中修改重叠的不同点部分,后面三个提示文件分别表示服务器上当前文件的SVN版本,本地当前文件在检出时的SVN版本、本地当前文件被本地修改后的现在版本(这实际上意味着你需要删除

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论