`
banner
  • 浏览: 53672 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

由一个team内的code merge问题引发的思考

 
阅读更多
  stand up meeting上,几个做同一模块的同事都说到merger代码很头疼,花费了很多effort,有同事重构了sub module依赖的base code, 有多位同事修改了相同的文件。SCM为CC,每个人有自己的sub-stream 和view。
  简单看一下,问题很common,每个人闷头做自己的task, code merge的频率小,UT滞后于source code。比较忙,不详细分析了:
  1、估story时、拆task时就应看到多个story或task有共同frame的倾向,coding之前或前期就应有简单的沟通,讨论framework,这时当然不宜在framework上花费太多时间,后续的沟通是必须的,pair-programing哪里去了?
  2、后续的重构当然需要,但有相应的UT保证重构的正确性吗,先run GUI测试功能后补UT的做法目的是什么,只为了clover生成的覆盖率?
  3、base code 重构,也要对依赖它们的code做相应的修改,code merge的情况在team中很正常,尽快提交,尽早merge,小步前进,对于多人更改频繁的code,pair-programming不正减少了更改code的“人”数吗,对于framework code,改时在team里说一声并不是难事。
分享到:
评论

相关推荐

    Araxis Merge Professional 2012.4162 (x86/x64).part1

    Use it to compare and merge source code, web pages, XML and other text files with native application performance. Directly open and compare the text from Microsoft Office (Word and Excel), ...

    Araxis Merge Professional 2012.4162 (x86/x64).part2

    Use it to compare and merge source code, web pages, XML and other text files with native application performance. Directly open and compare the text from Microsoft Office (Word and Excel), ...

    Eclipse上EGIT使用手册

    "Merge"功能("Team" > "Merge...")用于合并分支,解决冲突时,Eclipse提供可视化编辑器协助处理。 8. **解决冲突**: 当多个人同时修改同一份文件时,EGIT会标记冲突的文件。用户需要手动打开这些文件,解决冲突...

    藏经阁-Terraform - 管理云资源的正确姿势.pdf

    Merge Request 是 Terraform 的一个重要特性。Merge Request 允许用户将云资源的配置文件合并到主分支中,从而实现云资源的自动化更新。 使用 Gitlab CI Gitlab CI 是 Terraform 的一个重要特性。Gitlab CI 允许...

    a project model for the FreeBSD Project.7z

    These are usually the most active developers who are willing to spend their time not only integrating their own code but integrating code submitted by the developers who do not have this privilege....

    git.WAD_Team:这是一堆作业的临时存储库

    - **合并(Merge)**:将一个分支的更改合并到另一个分支,通常是将开发分支合并到主分支。 - **拉取(Pull)**:获取远程仓库的最新更改并合并到本地分支。 - **推送(Push)**:将本地更改推送到远程仓库。 2....

    Source-code-management:源代码管理笔记

    1. 初始化仓库:`git init` 在本地创建一个新的Git仓库。 2. 添加文件:`git add <file>` 将文件添加到暂存区,准备进行提交。 3. 提交更改:`git commit -m "commit message"` 将暂存区的更改保存到历史记录。 4...

    Inside Microsoft SQL Server 2008 T-SQL Querying

    SQL—and unveil the power of set-based querying—with comprehensive reference and advice from a highly regarded T-SQL expert and members of Microsoft's SQL Server development team. Database developers...

    fortran 2008标准

    `stop code`允许程序在遇到特定错误或条件时停止执行,并返回一个指定的状态码,这有助于更精确地诊断程序中的问题。 #### 内置过程用于位处理 ##### 位序列比较 `btest`和`ieor`等内置函数可以用于位级别的操作...

    Study_Algorithm_Team_2:Study_Algorithm_Team_2

    :pencil: YAPP 18기알고리즘스터디2팀 成员 ...merge : 내 레포에서 올린 pull request를 현재 organization의 alogorithm-study 레포에 합치기 폴더구조 름기이름/周(주차)/문제번호이및 公关 标题

    painless_git.pdf

    Merge conflicts pop up and litter your code with random rows of equal signs and angle brackets. You get great advice about rebasing instead of merging, which is a good idea except for those times ...

    GitLab Cookbook

    and configure your project visibility Secure your code with the correct GitLab configuration Make the most of the built-in issue tracker, including merge requests Manage your projects through the ...

    svn配置文件和eclipse安装插件

    在IT行业中,版本控制系统是开发团队协作的重要工具,其中Subversion(SVN)是一个广泛应用的集中式版本控制系统。本文将详细介绍如何配置Eclipse IDE以使用SVN,包括Tortoise SVN和Subversion SVN这两个常见的SVN...

    Endevor for mainframe

    3. **Utilize Branching and Merging**: Leverage branching strategies to manage parallel development streams and merge changes smoothly into the mainline codebase. 4. **Monitor Performance Metrics**: ...

    svn整合eclipse详细配置过程.doc

    除了上述基本操作,svn还提供了其他功能,如“Revert”恢复到之前的版本,“Merge”合并两个分支的代码,“Switch”切换到仓库的另一个分支等。在Eclipse中,这些操作都可以通过Subversive或Subclipse插件的相应...

    git-kata:当您知道git的基础,但有时会遇到问题。 这个“代码kata”可以帮助您处理git问题

    `git-kata`就是这样的一个实践平台,它提供了一系列针对Git操作的练习题目,让你在解决具体问题的过程中掌握Git的高级用法。 Git的基础操作包括创建仓库(`git init`)、添加文件(`git add`)、提交(`git commit`)、...

Global site tag (gtag.js) - Google Analytics