您好,欢迎访问三七文档
SVN操作培训手册主讲人:向婷时间:2013-12-02部门:研发部概述•培训对象:研发部所有使用SVN配置管理工具同事•目的:通过对SVN的培训,能够熟练掌握使用SVN工具的管理目录•配置管理规范配置管理的目的•配置管理工具SVN使用SVN常用操作目前配置库目录的介绍•Q&A配置管理的目的•配置管理的目的是在产品整个生命周期内建立和维护产品的正确性、完整性、可追溯性。为此,生命周期内需完整记录整机及各配置项的版本或标识,同时加强开发过程中的版本控制,确保配置项的唯一性和正确性。•配置管理分为几个部分•(1)软件版本配置管理•(2)开发文档、技术文件配置管理•(3)样机硬件(包含电气、机械、液路、热工、光学等)配置管理•(4)样机参数配置管理TortoiseSVN资源管理器简介•TortoiseSVN是Subversion在Windows操作系统下的一个资源管理器的插件。•通过TortoiseSVN这个资源管理器,我们可以很方便通过鼠标右键查看Subversion版本库的版本、日志、文件状态等信息,下面一一介绍各个信息如何操作。TortoiseSVN常用操作——填写认证•初次登录Subversion版本库系统会提示您输入用户名和密码,并提供“保存认证”功能。TortoiseSVN常用操作——填写认证•如果第一次使用没有要求输入帐号密码,请先清除SVN的认证记忆数据,清除方法如下:•在空白处单击鼠标右键,选择”tortoisesvn”—“设置”—“已保存数据”-“认证数据”-“清除”TortoiseSVN常用操作-版本库浏览器•具体操作:•鼠标右击桌面-点击TortoiseSVN-点击Repo-browser-输入需要打开的地址,点击【OK】-跳转到指定的目录下TortoiseSVN常用操作-导出文件•将SVN目录下文件导出:•在Windows资源管理器里选择一个存放工作拷贝的目录。•点击右键弹出快捷菜单,选择SVNCheckout命令TortoiseSVN常用操作-导出文件•如果需要修改SVN目录下的文档,首先需要将需要修改的文档导出,修改后再导入•Checkouydirectory:如果输入一个并不存在的目录名,那么这个名字的目录就会被创建出来。•URLofrepository:选择需要导出SVN下的目录•Fullyrecursive——全递归:检出完整的目录树,包含所有的文件或子目录。•Immediatechildren,includingfolders——直接子节点,包含文件夹:检出目录,包含其中的文件或子目录,但是不递归展开子目录。•Onlyfilechlidren——仅文件子节点:检出指定目录,包含所有文件,但是不检出任何子目录。•Onlythisitem——仅此项:只检出目录。不包含其中的文件或子目录。•TortoiseSVN常用操作-修改导出文件•1、将修改的文件从SVN导出到目标目录下•2、修改目标目录下的文件,文件的图标显示为“红色的叹号”TortoiseSVN常用操作-提交•命令:TortoiseSVN→Commit功能:将本地文件上传到SVN服务器上•SVNcommit:在导出的目标目录下,将本地已经修改过的文件上传到服务器上,使用commit目标目录下的文件内容必须有.svnTortoiseSVN常用操作-提交•提交对话框将显示每个被改动过的文件,包括新增的、删除的和未受控的文件。如果你不想改动被提交,只要将该文件的复选框的勾去掉就可以了。如果你要加入未受控的文件,只要勾选该文件把它加入提交列表就可以了。TortoiseSVN常用操作-导入•命令:TortoiseSVN→Import•功能:将本地文件上传到SVN服务器上。•现在进入资源管理器,选择你的项目的顶层目录,右击打开上下文菜单。选择命令TortoiseSVN→Import...,它会弹出一个对话框:,使用import服务器上可以没有此文件夹在这个对话框中,输入你的项目要导入的版本库的URL。输入信息(Importmessage)将用作提交日志。当你点击确认时,TortoiseSVN会导入包含所有文件的完整目录树到版本库。如前所述,你导入的文件夹名称不会在版本库中出现,只有这个文件夹的内容会在版本库中出现。现在这个工程就存贮在版本库,被版本控制。TortoiseSVN常用操作-导出•命令:TortoiseSVN→Export•功能:选择SVN服务器上的文件,复制到本地。•Export从服务器上选择目录文件,复制到本地,但不形成工作目录(更改本地文件,后续不能直接提交到服务器上,导出文件夹中没有.svn文件生成)TortoiseSVN常用操作-update•Update:在工作目录中,右键菜单中选择Checkout,将把本地最后一次更新后,服务器上发生过修改的文件更新到本地。(如李四将文件Acheckout到本地文件夹下,张三也将A文件checkout到他电脑上,修改A的内容,并且commit到SVN服务器,李四只需要点击update,即可将张三修改的内容更新到本地)TortoiseSVN常用操作——还原•命令:TortoiseSVN→Revert•功能:还原到上一个版本。•如果你想要撤消一个文件自上次更新后的所有的变更,你需要选择该文件,右击弹出快捷菜单,然后选择TortoiseSVN→Revert命令,将会弹出一个显示这个你已经变更并能恢复的文件。选择那些你想要恢复的然后按OK.TortoiseSVN常用操作——还原到指定版本•命令:TortoiseSVN→updatatorevision-单选框选中revision-输入指定的revision。•功能:放弃当前文件拷贝中所做的部分或全部修改,还原到指定的版本。•操作步骤:•1、必须查看到指定版本的版本号TortoiseSVN常用操作——还原到指定版本•2、将需要还原的文件导出到定目录下•3、TortoiseSVN常用操作——还原到指定版本•3、输入指定的还原的版本号,点击确定即可TortoiseSVN常用操作——日志信息•TortoiseSVN→显示日志•功能:查看Subversion版本库的日志信息,能体现出版本库对应各版本文件的增、改、删等信息。可输入日志修改信息双击可查看对应版本的内容TortoiseSVN常用操作-移动•如果你想在工作副本中移动文件,那么可以这样使用鼠标拖拽:•选择你要移动的文件或目录•拖拽(right-drag)他们到新的工作副本下,•松开鼠标右键•在弹出菜单选择上下文菜单→SVN移动文件。TortoiseSVN常用操作-复制•如果你想在工作副本中复制文件,那么可以这样使用指令copyto:•选择你要复制的文件或目录;•鼠标右击copyto,•输入指定的目录名称•如图TortoiseSVN常用操作-锁定SVN支持多人对文本类型的文件同时更改,提交服务器或更新本地文件时,将自动合并他人更改。如果多人不是更改文件的同一位置,SVN将很好地执行合并,如果判断出更改了同一位置,将提示更改有冲突,需要手工解决,解决后再提交(命令:Resolved)。对非文本类型文件,不支持自动合并,出现冲突后,也不好手工解决冲突,因此将文件操作设置成需要锁(选择文件,右键菜单中选择TortoiseSVN-Properties-New…-svn:needs-lock,属性值*),每次更改前加锁(GetLock),提交时释放锁(自动释放)或主动释放锁(ReleaseLock),可以避免多人同时更改一个文件TortoiseSVN常见问题-冲突•产生冲突的原因是由于本地文件拷贝与Subversion库中的文件信息不同所造成的。为了解决冲突,主要有以下几步:1、将本地文件拷贝中数据更新到最新版本。2、找到产生冲突的文件,可以看到除了产生冲突的文件外,还生成了3个其它文件。TortoiseSVN常见问题-冲突3、通过右键→TortoiseSVN→编辑冲突功能:合并本地文件(经过修改的工作拷贝)和远程文件(Subversion版本库),处理冲突。TortoiseSVN常见问题-冲突4、编辑完成后,执行右键“TortoiseSVN→已解决的(resolve)”,刷新后,文件的图标转换为可以示提交状态5、执行了resolve操作后才可消除冲突锁定,提交成功。注:该合并功能能用于像.txt,.c,.cpp,.java等文本文件,而不能用于像.doc,.xls,.ppt等二进制文件。所以,各位在处理二进制文件冲突时只能先行将本地拷贝中的冲突文件重命名,再一次更新本地的版本拷贝后,将新的版本拷贝与您所有的重命名的二进制文件进行手工对比修改后再行提交。目前配置库的结构说明01-Study用于大家对SVN操作进行演练等02-Rules公司的工作规范、流程等03-Projects项目文件,与项目有关的文件都放在此目录下04-Department各部门的目录,放置部门内部公开,不对外部门公开的文件05-Member个人目录,每个人自己的目录,放个人计划总结之类的06-Share公司内部共享的文件,例如工具软件,书籍等Q&A•1、举例说明配置管理的重要性?谢谢!SVN还有很多功能,我也在研究学习中,不足之处,请大家多提宝贵意见,希望以后能相互学习讨论。
本文标题:SVN操作培训手册
链接地址:https://www.777doc.com/doc-960576 .html