软件配置管理实验报告-SVN
- 格式:doc
- 大小:265.50 KB
- 文档页数:8
软件配置管理中的SVN一.简单介绍1、什么是软件配置管理软件配置管理是指通过运行版本号控制、变更控制的规程。
以及使用合适的配置管理软件。
来保证全部配置项的完整性和可跟踪性。
配置管理是对工作成果的一种有效保护。
2、为什么须要配置管理假设没有软件配置管理,最大的麻烦是工作成果无法回溯。
随着工作的进展新的程序覆盖了老的程序,当突然发现新程序有问题而老程序正确时怎么办?那仅仅能重写老的程序来覆盖新的程序。
过一段时间又发现原来的老程序有问题,而解决方法在原来的新程序中……您是不是快要发疯了。
为了避免成果被覆盖。
包含我自己在内的非常多人早期採用手工管理版本号的方式。
比如当一个新版本号产生时用当时的日期来命名目录大发生然后再复制一下以后的改动在复制的目录内进行。
这样上一个版本号就被保存下来了,周而复始不同的版本号不会被覆盖。
尽管这样的方式能够从某种程度上解决版本号的回溯问题,但他存在的缺点是显而易见的:第一点假设保留结果过于频繁,将会导致产生大量的有着反复内容的目录。
庞大的物理空间,管理起来非常麻烦;假设保留旧版本号的时间间隔太长,可能产生某些实用的老程序无法回溯。
拿我近期开发的一个程序来说程序仅仅有几十兆,经过一年的开发各版本号累计到1G。
第二easy产生版本号的混乱,假设是团队开发软件,这样的简单的方法更难解决这个问题的本质了。
3、人的问题配置管理的方法是成熟的,并且对应的软件工具也是成熟的,基本上不存在看不懂、不会用的问题。
配置管理的运行效果怎样。
全然是事在人为。
妨碍配置管理的主要问题是人们嫌麻烦和侥幸心理作怪。
在没出乱子的情况下,运行版本号控制看起来有些麻烦。
每次改动工作的时候总是要GetLatestVersion。
接着CheckOut。
改动完后又要CheckIn,多做了三步。
事实上这三步加起来也就十几秒钟。
并且不费脑子,根本没有加入多少麻烦。
不过个人感觉不爽而以。
然而不运行版本号控制的话。
万一发生工作成果被覆盖或丢失等问题,麻烦就大了。
练习一:建立仓库 目的:通过本练习掌握 SVN 仓库的创建
准备:安装 TSVN、 VisualSVN 1.4.5 以上版本 时间:8 分钟
一、建立仓库
步骤 说明
1、在 D 盘创建根目录 svn 及子目录 repository、workcopy
2、创建 SVN 仓库
l在 repository 目录下建 svnlib 目录
svnlib,即 d:\svn\repository\svnlib
l在svnlib上单击右键,选择[Tsvnà
在此创建版本库]
3、观察 svnlib 目录下的文件
4、访问 SVN 仓库
l TSVNà版本库浏览器
l版本库URL:
file:///D:/svn/repository/svnlib
l点确定
二、利用 VisualSVN 建立仓库
步骤 说明
1、打开 VisualSVN Server Manager
2、创建 SVN 仓库
l在 repository 目录下右键,选择
[Create New Repository]
l仓库名为:svnlib
3、创建用户
l在 user 目录下右键,选择[Create
New Repository]
4、访问 SVN 仓库
l TSVNà版本库浏览器
l版本库URL:
https://localhost:8443/svn/svnlib
l点确定
思考:两种仓库创建与访问的有何不同,主要差异是什么?有何心得?
实验心得。
北方民族大学学生实验报告系(部、中心)计算机科学与工程学院姓名紫恋漪晨学号 2012**** 专业软件工程班级四班同组人员课程名称软件工程实验名称实验七软件配置管理工具VSS基本应用实验日期 2013.11.21 批改日期成绩教师签名丁红胜北方民族大学教务处制一、实验目的a)理解软件配置管理的目的、用途和意义b)了解现有软件配置管理工具的主要特点和功能c)掌握VSS工具的基本使用二、实验内容a)软件配置管理基本原理和功能要求基本原理:(1)在整个软件的生命周期中提供标识和控制文档、源代码、接口定义和数据库等工件的机制。
(2)提供满足需求,符合标准,适合项目管理及其他组织策略的软件开发和维护的方法学。
(3)为管理和产品发布提供支持信息,如基线的状态、变更控制、测试、发布、审计等等。
功能要求:1、版本控制:对软件开发进程中文件或目录的发展过程提供有效的追踪手段,保证在需要时可回到旧的版本,避免文件的丢失、修改的丢失和相互覆盖,通过对版本库的访问控制避免未经授权的访问和修改,达到有效保护企业软件资产和知识产权的目的。
2、工作空间管理:提供一种便捷的访问正确版本的机制。
工作空间管理包括工作空间的创建、维护与更新、删除等,工作空间应具备稳定性、一致性、透明性等特点。
缺少有效的工作空间管理会造成由于文件版本不匹配而出错和降低开发效率,更长的集成时间等问题。
3、并行开发支持:同一软件的多个版本会同时进行开发,从而有效缩短软件的上市周期。
为实行并行开发模式,需要一种机制将前一个版本中后期开发的功能合并到后一个版本中。
4、过程控制:配置管理系统应该能够支持灵活的配置管理流程,并实现过程自动化以提高配置管理效率。
5、构建和发布管理:构建和发布管理的目的地确保软件构建是可重现的、高效的和可维护的。
6、异地开发支持:配置管理系统能够有效支持地理上分布的团队之间的远程协作。
典型异地开发模式具有以下特点:(1)支持跨多个地点的分布式开发。
配置管理之SVN使用配置管理是软件开发过程中不可或缺的一环,它涉及到版本控制、配置项的管理、更改控制和发布管理等多个方面。
在配置管理中,版本控制是最基础的一个环节。
而在版本控制工具中,SVN(Subversion)是一种被广泛使用的开源版本控制系统,本文将介绍SVN的基本使用方法。
一、SVN的安装和配置2. 创建仓库:SVN的核心概念是仓库(repository),开发者将项目的所有版本和相关的文件都存储在仓库中。
在命令行中进入合适的目录,执行以下命令创建一个新的仓库:svnadmin create <repository_name>二、SVN的基本操作svn checkout <repository_url> <local_directory>2. 添加(Add)文件:在检出项目后,你可能需要添加新的文件到项目中。
使用以下命令可以将文件添加到SVN中:svn add <file_name>3. 更新(Update)项目:当其他开发者对项目进行了修改并提交到仓库中后,你可以使用以下命令将这些修改同步到你的本地工作环境中:svn update5. 查看日志(Log):使用以下命令可以查看项目的提交记录和详细信息:svn log6. 比较文件(Diff):使用以下命令可以比较两个或多个文件的差异:svn diff <file_name>7. 回滚版本(Revert):如果你对文件进行了错误的修改或不满意的修改,可以使用以下命令将文件回滚到之前的版本:svn revert <file_name>8. 分支和合并(Branching and Merging):SVN还支持分支和合并功能,这使得不同版本可以同时进行开发。
使用以下命令可以创建和合并分支:svn copy <source> <destination>svn merge <source> <destination>三、SVN的高级用法svn copy <source> <tag>2.锁定:在一些情况下,你可能需要锁定一些文件以防止其他人进行修改。
SVN(Subversion)是一个版本控制系统,用于管理和追踪在一个项目中的文件和目录的历史。
它可以帮助开发人员协作开发同一个项目,同时避免不同版本之间的冲突。
在这次实验中,我主要扮演了SVN管理员的角色,以下是我在这次SVN实验中的一些心得体会:
1. SVN是团队协同工作的好工具:通过SVN,我们可以将项目文件集中管理,并且可以方便地查看历史记录,进行版本控制和比较。
这使得团队成员之间的协作更加高效和有序。
2. SVN可以有效地管理代码版本:在开发过程中,代码的版本控制非常重要。
SVN可以记录每一次代码的修改,使得我们可以轻松地回滚到任何一个版本,或者查看某个特定版本的区别。
3. SVN的使用需要一定的学习成本:与Git相比,SVN的命令行操作可能更加繁琐一些。
因此,对于初学者来说,理解SVN的基本概念和掌握基本操作可能需要一些时间。
但是,一旦掌握了SVN 的基本用法,就可以更好地利用它来管理代码。
4. SVN的分支和标签功能很有用:在开发过程中,我们经常需要维护多个版本。
SVN的分支和标签功能可以帮助我们创建多个并行版本,同时保持它们之间的独立性。
5. SVN的安全性需要关注:由于SVN存储的是明文密码,因此需要注意SVN服务器的安全性。
在生产环境中,应该考虑使用HTTPS 来保护数据传输,并设置合适的访问权限和身份验证机制。
总的来说,SVN是一个非常实用的版本控制系统,可以帮助团队更好地协作和管理代码。
虽然它的学习曲线可能有些陡峭,但是一旦掌握了基本的用法,就可以充分利用它来提高开发效率和管理代码的质量。
实验三软件项目管理-SVN实验报告实验三SVN的安装配置和使用一、实验目的掌握开源软件配置工具SVN的安装配置和使用。
二、实验内容1.安装服务器端Visual SVN Server2.安装客户端Tortoise CVS3.建立一个本地版本库过程:新建文件夹,目录和文件夹名称最好都用英文,不要使用中文;打开文件夹,在空白处按下“shift键+鼠标右键”;在弹出的菜单中选择“TortoiseSVN - Create repository here”;弹出对话框,提示创建成功,并自动在文件夹中创建了目录结构; 4.向版本库导入已有的文件过程:打开已有的项目文件夹,在空白处按下“shift键+鼠标右键”;在弹出的菜单中选择“TortoiseSVN - Import”;选择导入路径,填写备注信息,点击“OK”开始导入;导入完成后会弹出提示,可以拖动滚动条查看导入的文件,点击“OK”,完成导入;4.客户端机器上,新建一个工作目录,执行检出操作。
5.建立一个客户端,取出版本库的一个工作拷贝;在E盘的新建一个空目录“CheckOut”并右击该文件,选择SVN Checkout…成功后文件夹如下所示:Checkout文件夹内如下所示:6.向版本库导入新增文件此时文件出入待导入状态,并未真的导入右击JacobTu-Prj文件图标,选择SVN Commit…然后图标变为如下所示,表示添加成功三、实验心得:通过本次实验我慢慢开始了解TortoiseSVN的其它功能。
例如查看文件修改日志Show log、回滚已提交的修改操作Revert、创建分支Branch/Tag、创建补丁Create patch等。
同时也总结了一点小心得:1.如果你动了SVN(或CVS)上的某个东西,而未commit到服务器上,此时你如果你用update操作,不会把SVN上的东西更新到你本地,也就是说,你在你的机器上看到的还是你更改之后的东西2.在commit操作之前,最好要先update一下,原因是有可能别人把新版本放到服务器上了,而你并未更新到你本地,此时如果你没有进行update操作,而直接commit,就会报错3.如果你想放弃你的修改,直接采用服务器里的页面,你必须先把你的修改还原,然后再从服务器上update下来就OK了。
软件过程管理实验报告(2011/ 2012 学年第二学期)实验报告实验报告四、实验小结(包括问题和解决方法、心得体会、意见与建议等)svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。
目前,绝大多数开源软件都使用svn作为代码版本管理软件。
SVN采用virtual copy(虚拟拷贝)的方式创建分支.创建后展现给客户端的是独立的库路径,而实际上和主版本共用同样的数据,哪怕是创建多个分支.因此,完全不用担心创建多个分支会增加磁盘的占用空间,而且,其创建效率也是非常高的,官方的说法是constant time(恒定时间),无论你的库有多大,其创建分支的时间基本上是恒定的。
SubVersion官方建议SVN库根目录应包括Trunk和Branches,这是两个最基本的目录.其实其目录结构可以是任意的.一般Trunk存放主版本,Branches存放众多的分支版本.如下图所示EAS100C的SVN目录结构.因此可以把EditionG3和EditionContracts放在Branches目录.如何创建分支TortoiseSVN是官方SVN客户端,以性能好,对Subversion支持全面而被广泛使用.(Tortoise,海龟,无明确寓意).有多种方式可创建分支.方式一第一种方式是采用浏览模式,这种方式简单,快捷,会以当前trunk的最新修订本创建分支,无其他可选项.见完整图示:(1)右键,选择Repo-browser(2)输入库路径(SVN可支持svn:,http:等多种形式的服务,以svn:为性能最佳)(3)浏览库目录(4)右键要创建分支的目录(5)输入分支要存放的路径,如Branches/EditonG3(6)创建成功方式二第二种方式是使用Trunk本地工作副本(Working copy),也是利用TortoiseSVN来创建,见完整图示: (1)打开本地Trunk流工作副本(2)处理所有本地修改.这里结合使用两种方式,第一个是使用Revert可取消本地文件修改,另外一个是使用TortoiseSVN的扩展菜单(Shift+右键)Delete unversioned items,删除无版本状态的文件.使用SVN有一点可使使用者放心,就是本地的任何修改不提交到服务器总是不会起影响服务器状态的.(3)使用update更新Trunk working copy到最新版本.(4)创建分支(5)填写必要分支信息(To URL:分支创建到的库路径,Create copy in the repository from,指定从哪个revision创建拷贝,switch work copy to new branch/tag:切换工作区副本到分支流,该选项为可选,选中后速度会较慢),执行(6)创建成功常见问题:隐藏文件.svn目录删除了怎么办?Checkout后,工作空间下.svn目录下有大量隐藏文件,占用比较大的空间,他们是工作空间的管理文件,不能删除,如果不小心删除了也不要抓狂,不会影响服务器端的,重新checkout就又可以工作了。
实验报告学期:2017-2018学年第2学期课程名称:软件配置管理项目名称:实验1:SVN的安装配置与基本操作学号:**************名:***班级:16软件(2)班专业:软件工程***师:***2018 年9 月10 日一、实验目的1、理解SVN的工作原理与机制;2、掌握SVN的下载、安装、配置方法;3、掌握Visual SVN Server的创建版本库和添加用户等基本操作;4、掌握TortoiseSVN的检出、更新、新增、提交、还原、查看日志等基本操作。
二、实验平台或环境(根据机器实际情况填写)硬件平台:CPU型号+内存大小+硬盘大小等硬件信息。
操作系统:操作系统版本(例如:Windows 7 旗舰版(32位))涉及软件及版本:……例如:SVN服务器端:Visual SVN Server 3.8.0(Win32)SVN客户端:TotorsiseSVN 1.9.7(Win32)三、实验内容与要求1. 下载Visual SVN Server 服务端软件并安装,然后创建一个版本库和两个用户帐户。
2. 下载TotorsiseSVN客户端软件并安装,然后在本地计算机SVNProjects文件夹下实现检出、更新、新增、提交、还原、查看日志等基本操作。
四、实验步骤和结果1、下载Visual SVN Server 服务端软件并安装图1.1.1图1.1.2图1.1.3创建版本库和两个用户账户(1)创建版本库图1.2.1 创建版本库图1.2.2 创建版本库图1.2.3 创建版本库图1.2.4 创建版本库(2)创建用户图1.3.1 创建用户2.下载TotorsiseSVN客户端软件并安装,然后在本地计算机SVNProjects文件夹下实现检出、更新、新增、提交、还原、查看日志等基本操作。
(1)检出图2.1.1 检出图2.1.2 检出成功(2)新增图2.2.1 新增图2.2.2 新增(3)提交图2.3.1 提交成功(4)更新图2.4.1 更新(5)还原图2.5.1 还原(6)查看日志图2.6.1 查看日志五、实验小结(知识点总结、心得与感受,要具体,不要泛泛而谈,200字以上)这学期的第一次实验,完成得还是有点困难。
软件配置管理实验一实验报告学院:计算机科学学院班级:软件工程02班组员:姜力菊软件配置管理实验一.实验名称:软件配置管理工具及应用实例二.实验目的:(1)掌握软件版本管理工具SVN服务器的安装、配置和使用(2)掌握客户端中软件版本控制工具的安装和使用。
(3)了解软件企业中配置管理的工作指南三.实验内容:(1)安装软件版本管理服务器VisualSVN,并掌握其配置方法1.安装VisualSVN,双击安装文件按照提示操作:2.VisualSVN server配置:3.安装完VisualSVN Server后,运行Visual SVNServer Manger,启动界面如图1所示。
提示:“Status”为SVN服务器状态,包括运行状态和服务器URL地址。
“Logging”为服务器日志。
“Subversion Authentication”为账户(User和Groups)信息。
“Repositories”为SVN代码库信息。
图14.首先添加一个代码库。
右击“Repository”,选择一种方式均可创建一个新的代码库。
如图1-2图25. 创建用户Users。
在左侧的Users上点击右键,任意选择一种方式均可创建一个新的用户。
如图3图36.按照同样的方式创建用户Developer1,tester1,manamger1如图4:图47.首先右击刚才创建的代码库StartKit, 选择“Properties”,然后分别对个用户授权如图5:图5(2)安装软件版本管理客户端软件TortoiseSVN,并掌握其配置和使用方法:1.双击TortoiseSVN安装包,按照提示安装如图1:图12.安装完成后在任意空白位置点击鼠标右键,弹出如图 2-2所示的功能菜单:图23.结合Eclipse代码开发环境,掌握版本管理工具在项目代码开发中的使用:注意:在使用SVN服务之前,要先确保关闭Windows防火墙,否则可能出现无法连接到SVN服务器的情况。
基于SVN的软件配置管理系统的研究与设计的开题报告一、研究背景与意义随着软件开发的日益复杂,软件配置管理系统的重要性也越来越明显。
随着软件开发人员数量的增加以及项目的增多,手动管理软件的版本和变更已经变得无法胜任。
因此,我们需要一种自动化的软件配置管理系统来帮助我们管理软件的版本和变更。
SVN是一个流行的版本控制系统,被广泛应用于软件开发过程中的版本控制和变更管理。
本研究基于SVN,旨在设计一个可靠的、安全的、易于使用的软件配置管理系统,以便开发人员能够对软件进行版本控制和变更管理。
二、研究内容与目标本研究的主要内容是基于SVN的软件配置管理系统的设计与实现。
主要目标包括:1. 设计一个基于SVN的软件配置管理系统,具有以下功能:版本控制、变更管理、冲突解决、合并、分支和标记等。
2. 实现一个可靠的、安全的、易于使用的软件配置管理系统,提供良好的用户体验和友好的界面。
3. 对系统进行测试和评估,以确保它的稳定性、可靠性和安全性。
三、研究方法与步骤本研究将采用以下方法和步骤:1. 文献综述与调研。
通过阅读相关文献和调查业界现有的基于SVN的软件配置管理系统,了解其优缺点,为本研究提供参考和借鉴。
2. 需求分析。
根据用户的需求和实际情况,确定软件需求,包括功能需求和非功能需求。
3. 系统设计。
根据需求设计软件配置管理系统的架构和模块,确定系统的技术选型和实现方案。
4. 开发与测试。
实现和测试软件配置管理系统的各个模块和功能,进行单元测试、功能测试、系统测试和性能测试。
5. 评估和改进。
对系统进行评估和改进,确保其稳定性、可靠性和安全性,在用户的反馈和需求的基础上不断完善。
四、预期成果与实际应用本研究的预期成果包括一个基于SVN的软件配置管理系统,具有版本控制、变更管理、冲突解决、合并、分支和标记等功能。
该系统可以帮助开发人员管理软件的版本和变更,提高软件开发效率和质量。
该系统可以应用于各种软件开发项目中,特别是对于大型软件项目、分布式软件项目和开源软件项目等,能够提供更便捷和高效的软件配置管理和版本控制服务。
软件过程管理
实验报告(2011/ 2012 学年第二学期)
实验报告
实验报告
四、实验小结(包括问题和解决方法、心得体会、意见与建议等)
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。
目前,绝大多数开源软件都使用svn作为代码版本管理软件。
SVN采用virtual copy(虚拟拷贝)的方式创建分支.创建后展现给客户端的是独立的库路径,而实际上和主版本共用同样的数据,哪怕是创建多个分支.因此,完全不用担心创建多个分支会增加磁盘的占用空间,而且,其创建效率也是非常高的,官方的说法是constant time(恒定时间),无论你的库有多大,其创建分支的时间基本上是恒定的。
SubVersion官方建议SVN库根目录应包括Trunk和Branches,这是两个最基本的目录.其实其目录结构可以是任意的.一般Trunk存放主版本,Branches存放众多的分支版本.如下图所示EAS100C的SVN目录结构.因此可以把EditionG3和EditionContracts放在Branches目录.
如何创建分支
TortoiseSVN是官方SVN客户端,以性能好,对Subversion支持全面而被广泛使用.(Tortoise,海龟,无明确寓意).
有多种方式可创建分支.
方式一
第一种方式是采用浏览模式,这种方式简单,快捷,会以当前trunk的最新修订本创建分支,无其他可选项.见完整图示:
(1)右键,选择Repo-browser
(2)输入库路径(SVN可支持svn:,http:等多种形式的服务,以svn:为性能最佳)
(3)浏览库目录
(4)右键要创建分支的目录
(5)输入分支要存放的路径,如Branches/EditonG3
(6)创建成功
方式二
第二种方式是使用Trunk本地工作副本(Working copy),也是利用TortoiseSVN来创建,见完整图示: (1)打开本地Trunk流工作副本
(2)处理所有本地修改.这里结合使用两种方式,第一个是使用Revert可取消本地文件修改,另外一个是使用TortoiseSVN的扩展菜单(Shift+右键)Delete unversioned items,删除无版本状态的文件.使用SVN有一点可使使用者放心,就是本地的任何修改不提交到服务器总是不会起影响服务器状态的.
(3)使用update更新Trunk working copy到最新版本.
(4)创建分支
(5)填写必要分支信息(To URL:分支创建到的库路径,Create copy in the repository from,指定从哪个revision创建拷贝,switch work copy to new branch/tag:切换工作区副本到分支流,该选项为可选,选中后速度会较慢),执行
(6)创建成功
常见问题:
隐藏文件.svn目录删除了怎么办?
Checkout后,工作空间下.svn目录下有大量隐藏文件,占用比较大的空间,他们是工作空间的管理文件,不能删除,如果不小心删除了也不要抓狂,不会影响服务器端的,重新checkout就又可以工作了。
如果想不包含这些隐藏文件导出,可以用TSVN菜单里的export完成。
提示:405 Method Not Allowed的原因和解决方法
用TortoiseSVN访问基于apache配置的svn版本库时,有时候会提示错误405 Method Not Allowed,开始用TSVN checkout了一个正常的目录,假设服务器地址为:http://svn/project1,之后,服务器经过其它配置,这个地址变了,使得用这个地址不再能访问到正确的版本库,此时,TSVN就极有可能报405错误。
另外,当你访问的地址大小写与服务器的地址不一致时,也会出现该错误。
只要将TSVN访问的地址改成正确的,或修改服务器配置,使原地址可以访问即可解决。
成绩批阅人日期。