php发展

首页 » 常识 » 诊断 » 团队项目开发的问题和解决方案
TUhjnbcbe - 2022/5/21 15:33:00

个人开发和团队开发这两个词相信对大家来说并不陌生。所谓个人开发就是一个人把控产品的所有内容;而团队开发则是由多个人组团并完成产品的开发。

要实施团队开发以下几点是不可或缺的:

对开发过程中的各种事件(例如:谁到什么时间完成了什么事情)进行管理和共享。

在团队内部共享各类工作成果以及新的知识技巧等。

管理工作成果的变更,既要防止成果被破坏,又要保证各个成员利用现有成果并行作业。

证明团队开发出的软件在任何时候都是可以正常运行的。

使用自动化的工作流程,让团队成员能够正确的实施开发、测试和部署。

团队项目开发常见问题团队开发相较于个人开发,容易遇到以下几个方面的问题。问题1:传统的沟通方式无法确定处理的优先级例如:使用邮件进行沟通可能出现邮件数量太多导致重要的邮件被埋没,无法管理状态,不知道哪些问题已经解决,哪些问题尚未处理,如果用全文检索邮件的方式来查询相关问题效率过于低下。解决方案:使用缺陷管理工具。问题2:没有能够用于验证的环境例如:收到项目正式环境中发生的故障报告后,需要还原正式环境需要花费很长的时间。解决方法:实施持续交付。问题3:用别名目录管理项目分支解决方法:实施版本控制。问题4:重新制作数据库非常困难例如:正式环境和开发环境中数据库表结构不一致或者某个表列的顺序不一致。解决方法:实施版本控制。问题5:不运行系统就无法察觉问题例如:解决一个bug可能引入其他的bug或者造成系统退化,不正确的使用版本系统覆盖了其他人的修改,修改的内容相互发生了干扰,如果问题不能尽早发现,那么等过去几个月后再想追溯问题就非常麻烦了。解决方法:实施持续集成,将团队成员的工作成果经常、持续的进行构建和测试。问题6:覆盖了其他成员修正的代码解决方法:实施版本控制。问题7:无法实施代码重构例如:在实施代码重构(在不影响代码产生的结果的前提下对代码内部的构造进行调整)时可能引发退化。解决方法:大量的可重用的测试并实施持续集成。问题8:不知道bug的修正日期无法追踪退化解决方法:版本控制系统、缺陷管理系统和持续集成之间需要交互,最好能够和自动化部署工具集成到一起来使用。问题9:发布过程太复杂解决方法:实施持续交付。基于对上述问题的阐述和分析,我们基本上可以得到以下的结论,在团队开发中版本控制、缺陷管理和持续集成都是非常重要且不可或缺的。版本控制

针对上面提到的一系列问题,我们可以得出一个简单的结论,版本控制是实施团队开发的首要前提,必须通过版本控制对产品研发过程中产生的各种信息进行管理,这些内容包括:

代码。

需求和设计的相关文档。

数据库模式和初始数据。

配置文件。

库的依赖关系定义。

Git简介

Git是诞生于年的一个开源分布式版本控制系统,最初是LinusTorvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个版本控制软件。Git与常用的版本控制工具Subversion等不同,它采用了分布式版本控制的方式,在没有中央服务器支持的环境下也能够实施版本控制。

对于有使用Subversion(以下简称为SVN)经验的人来说,Git和SVN的共同点是摒弃了传统的基于锁定模式的版本控制(早期的CVS和VSS使用了锁定模式,当一个开发者编辑一个文件时会锁定该文件,其他开发者在此期间无法编辑该文件),采用了更有效率的基于合并模式的版本控制,而二者的区别在于:

Git是分布式的,SVN是集中式的,SVN需要中央服务器的支持才能工作。

Git把内容按元数据方式存储,而SVN是按文件,即把文件的元信息隐藏在一个.svn文件夹里。

Git分支和SVN的分支不同,SVN对分支的处理是相当“狗血”的。

Git没有一个全局版本号,但是可以自己维护一个版本标签。

Git的内容完整性要优于SVN,Git的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。

总而言之,Git真的非常棒!!!

安装Git

可以在Git官方网站找到适合自己系统的Git下载链接并进行安装,macOS和Windows平台下安装Git都非常简单,Linux下如果要安装官方最新的版本,建议通过官方提供的Git源代码进行构建安装,步骤如下所示(以CentOS为例)。

下载Git源代码压缩文件。

wget

1
查看完整版本: 团队项目开发的问题和解决方案