软件开发版本管理(软件开发版本管理 回归测试)
本篇文章给大家谈谈软件开发版本管理,以及软件开发版本管理 回归测试对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。
本文目录一览:
版本控制在软件开发中由谁管理?
svn版本控制器安装 分类:学习园地Subversion 系统
多年来,并发版本系统(CVS)一直是在Linux上管理代码或者文本的标准。作为基于RCS上建立但却允许多用户协作的系统而言,CVS记录所有文件的修改信息。这对于程序开发者、网络设计者和系统管理员而言,是非常有用的。
然而,CVS逐渐显示出它的衰老,出现了相似的源代码管理软件。然而大多这种东西都是以牟利为主要目的的。
Subversion就是一种相对新鲜的源代码管理系统。虽然事实上它还在不断的反展之中,但是Subversion已经是一个非常稳定而且成熟的产品。它是一个全新的系统,其功能可以和CVS媲美,同时,它要比CVS更直观,更容易操作。本文就Subversion的安装和一些特殊功能作一个介绍。
安装服务器端
第一步:下载Apache和SVN源码包
从官方网站台下载httpd-2.0.52.tar.gz,subversion-1.2.3.tar.gz
(因为redhat 9默认安装的Apache没有并包含--enable-so选项,所以无法产生mod_dav_svn.没有这个模块,SVN就无法采用http方式运行,所以必须重新编译新的Apache)
以root身份执行:
#tar zxvf httpd-2.2.0.tar.gz
#cd httpd-2.2.0
#./configure --enable-dav --enable-so --enable-maintainer-mode
#make
#make install
此时会产生/usr/local/apache2目录,接着执行:
#tar zxvf subversion-1.2.3.tar.gz
#./configure --with-apxs=/usr/local/apache2/bin/apxs
# rm /usr/local/lib/libsvn*
# make clean make make install
此时会自动在/usr/local/apache2/conf/httpd.conf添加
LoadModule dav_svn_module modules/mod_dav_svn.so
安装完成后,运行svnserver --version确认版本号1.2.3。
SVN服务器安装结束.
第二步,创建仓库 svnadmin create /home/svnrepo
/root/svnrepo为所创建仓库的路径,理论上可以是任何目录
第三步,修改配置文件/home/svnrepo/conf/svnserve.conf
代码
#去掉#[general]前面的#号
[general]
#匿名访问的权限,可以是read,write,none,默认为read
anon-access = none
#认证用户的权限,可以是read,write,none,默认为write
auth-access = write
#密码数据库的路径,去掉前面的#
password-db = passwd
注意:所有的行都必须顶格,否则报错。
建议:为了防止不必要的错误,建议你直接用我上面的内容覆盖掉文件原来的内容
第四步,修改配置文件passwd。
代码
[users]
sxy = sxy
注意
1. 一定要去掉[users]前面的#,否则svn只能以匿名用户登录,客户端不会出现登录窗口,除非你的anon不为none,否则将返回一个错误。
2. 这里的密码都是没有加密的,我按照一些教程所说的用htpasswd生成的密码无法使用。
第五步,启动svn服务
对于单个代码仓库
启动命令 svnserve -d -r /home/svnrepo --listen-host 192.168.100.200
其中-d表示在后台运行,-r指定服务器的根目录,这样访问服务器时就可以直接用svn://服务器ip来访问了。如果服务器有多ip的话--listen-host来指定监听的ip地址.
我们可以在svn客户端中通过svn://192.168.100.200来访问svn服务器
对于多个代码仓库,我们在启动时也可以用-r选项来指定服务器根目录,但访问时需要写上每个仓库相对于svn根目录的相对路径.
比如,我们有两个代码仓库/home/repoa和/home/repob,我们用svnserve -d -r /home --listen-host 192.168.100.200来启动,那么在客户端访问时可以用svn://192.168.100.200/repoa和svn://192.168.1.200/repob来分别访问两个项目
启动完成以后,我们可以用ps aux|grep svnserv来查看是否存在svnserve进程.
第六步 开放服务器端口
svn默认端口是3690,你需要在防火墙上开放这个端口。
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT
/sbin/service iptables save
你也可以通过svnserve的--listen-port选项来指定一个已经开放的其他端口,不过这样的话客户端使用也必须家上端口,如svn://192.168.100.200:9999/.
第七步,使用svn客户端导入项目
推荐使用客户端
eclipse插件
附:svnserve [选项]
有效选项:
-d [--daemon] : 后台模式
--listen-port arg : 监听端口(后台模式)
--listen-host arg : 监听主机名或IP地址(后台模式)
--foreground : 在前台运行(调试时有用)
-h [--help] : 显示这个帮助
--version : 显示版本信息
-i [--inetd] : inetd 模式
-r [--root] arg : 服务根目录
-R [--read-only] : 不赞成;使用档案库配置文件
-t [--tunnel] : 隧道模式
--tunnel-user arg : 隧道用户名(模式是当前用户UID的名字)
-T [--threads] : 使用线程代替进程
-X [--listen-once] : 监听一次(调试时有用)
安装客户机端
window客户机:
直接安装TortoiseSVN-1.1.1-UNICODE_svn-1.1.1.msi,方法同一般软件安装相同。
Linux客户机:
方法舆安装服务器相同。
(注意redhat 9默认安装的SVN版本为0.17.1,它的客户端命令svn无法舆新的SVN服务器通讯,必须重新安装)
我是从“上海全鼎软件学院”毕业的————————
软件开发的三大资源
人力资源、代码资源和文档资源。
代码资源一般需要通过版本管理工具进行管理。为什么需要版本管理工具,一方面是因为现代软件开发是一个团队活动,是需要进行协作开发的。另一方面版本管理具有回溯历史版本的功能,在排错中具有重要意义。文档管理。软件开发中文档可以分为一下几类:1、设计文档。如概要设计、详细设计,2、交流文档。如内部会议记录、和甲方的交流邮件,3,经验总结。如技术总结、开发中用到的电子书。
文档资源的作用:首先设计方面的文档本身就是甲方要求的,你不想写都不行,二是文档可以作用过程资产来共享。svn版本库下一般有三个目录:trunk、branches和tags。trunk很好理解,就是存放最新版本代码的目录,branches作为存放分支版本的目录,主要起到一个试验的作用。比如当你试验一个新的绘图引擎,你在主干版本试验就不太合适。因为主干版本的代码是经常处在剧烈变动的状态,很可能导致试验无法进行,同时你编写试验代码也会影响其它人的代码。因此稳妥的办法是你复制一份主干版本到branches目录下作为一个分支来试验,待试验通过后再和主干版本进行代码合并。tags主要作用在于存放不作改动的比较稳定的历史版本。比如你要对外发布版本,你不可能编译最新代码来获取一个版本来对外发布,因为这个版本虽然是最新的,但肯定不是最稳定的,因为没有经过严格测试。因此你需要从tags目录下找一个稳定的历史版本来发布。
软件系统怎么做版本管理?
软件开发好之后,代码不是一成不变的,需要不断调整,比如新增功能,优化功能,修复bug。
那么如何去区分不同时期阶段的代码呢?就有了所谓的版本管理概念,比如刚发布的软件系统定义为1.0版本,推出新功能之后就是1.1版本。
我们通过命名版本号的方式来区分不同版本的代码,例如1.1版本新增了1个功能,优化了2个功能,修复了3个bug。
来看一个实际的例子,我们开源的likeadmin是怎么做版本管理的。
likeadmin的所有代码变更都公开在gitee代码托管平台,大家可以看到我们的程序员每次提交的代码更新日志。
每当研发完成一个版本的所有规划功能,我们会在gitee发布新版本。发布新版本之后,程序员就可以继续进行新的功能研发了。
接下来虽然不断会有新的代码提交,但是直接点击对应版本的下载链接,就能下载该版本的代码了,不会弄混,这有点 历史 镜像的感觉。
另外,为了进一步方便大家下载likeadmin不同版本的代码,并且了解版本之间的区别,我们专门在官网做了一个更新 历史 的页面。
这个页面,点击进去就是一个时间轴,记录了不同版本的发布日期,版本变化。
这就是likeadmin的版本管理方式了。
欢迎点赞加关注,带你一起深入了解程序员视界。
关于软件开发版本管理和软件开发版本管理 回归测试的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
相关推荐
-
竞聘软件开发部经理(竞聘软件开发部经理自我介绍)
-
正规软件开发价位(软件开发软件多少钱)
-
嵌入式软件开发环境(嵌入式软件开发环境有哪些)
-
软件开发技术部包含(软件开发技术部包含哪些岗位)
-
软件开发自学哪个专业(什么专业学软件开发)
-
嵌入式软件开发工程师工作内容(嵌入式软件工程师工作职责)
-
竞聘软件开发部经理(竞聘软件开发部经理自我介绍)
-
正规软件开发价位(软件开发软件多少钱)
-
嵌入式软件开发环境(嵌入式软件开发环境有哪些)
-
软件开发技术部包含(软件开发技术部包含哪些岗位)
-
软件开发自学哪个专业(什么专业学软件开发)
-
嵌入式软件开发工程师工作内容(嵌入式软件工程师工作职责)
-
竞聘软件开发部经理(竞聘软件开发部经理自我介绍)
-
正规软件开发价位(软件开发软件多少钱)
-
嵌入式软件开发环境(嵌入式软件开发环境有哪些)
-
软件开发技术部包含(软件开发技术部包含哪些岗位)
-
软件开发自学哪个专业(什么专业学软件开发)
-
嵌入式软件开发工程师工作内容(嵌入式软件工程师工作职责)