当前位置:网站首页>基于SVN分支开发模式流程浅析
基于SVN分支开发模式流程浅析
2022-07-03 15:04:00 【星哥玩云】
在使用svn多人协作开发式一般采取的工作方式如下:
检出库 创建并维护开发分支 定期将主干代码合并回分支,保证数据完整性,避免最终合并回主干时出现冲突 分支测试 将分支合并回主干 主干提交、部署 多人协作时,第三步是最经常出问题的地方,严重的甚至会导致代码被覆盖回滚情况,其原因在于分支管理者创建分支后不再或长时间从主干拉回数据,导致最终合并回主干时分支的文件甚至结构都与主干有较大差别,产生较多冲突。需要人手解决,浪费了很多时间。
针对这个问题,是否有一种方案可以在分支提交时即检测该分支最后一次合并的版本是否与主干版本相符,如果不符则不允许提交,强制要求大家养成从主干拉数据的习惯呢?如果可以实现,那么在分支合并回主干时将几乎可以消灭掉冲突。
当前思路主要有3种:
1. 不间强调使用SVN时要经常从主干同步代码到分支。该方案缺点很明显,完全依赖人工,不可信。
2. 在trunk里单独维护一个带最新版本号的readme.md,每次更新trunk时更新该版本到更新的版本号。此后合并分支回主干时判断下分支时的readme.md是否和主干里的readme.md保持一致,若小于主干,则强制同步主干代码到分支。 该方案缺点是需要每次更新主干代码时都要强制手工维护版本号,容易出现低级错误——更新trunk时忘记更新readme.md里的版本号等情况。
3. SVN本身记录版本更新信息,可以通过在服务器端监控主干,判断提交前(pre-commit)检测是否有分支最后一次合并版本号小于主干版本号,如果小于则不允许提交,强制要求先从主干合并。此方案是一种相对完美的方案。
边栏推荐
- Global and Chinese markets of AC electromechanical relays 2022-2028: Research Report on technology, participants, trends, market size and share
- Adobe Premiere Pro 15.4 has been released. It natively supports Apple M1 and adds the function of speech to text
- C language fcntl function
- Série yolov5 (i) - - netron, un outil de visualisation de réseau
- 基础SQL教程
- [opengl] pre bake using computational shaders
- B2020 points candy
- 远程服务器后台挂起 nohup
- 【Transform】【NLP】首次提出Transformer,Google Brain团队2017年论文《Attention is all you need》
- Devaxpress: range selection control rangecontrol uses
猜你喜欢
How to color ordinary landscape photos, PS tutorial
High quality workplace human beings must use software to recommend, and you certainly don't know the last one
Talking about part of data storage in C language
复合类型(自定义类型)
运维体系的构建
C language to realize mine sweeping
My QT learning path -- how qdatetimeedit is empty
Didi off the shelf! Data security is national security
[ue4] HISM large scale vegetation rendering solution
Incluxdb2 buckets create database
随机推荐
[pytorch learning notes] datasets and dataloaders
Chapter 14 class part 1
Global and Chinese market of lighting control components 2022-2028: Research Report on technology, participants, trends, market size and share
Déformation de la chaîne bm83 de niuke (conversion de cas, inversion de chaîne, remplacement de chaîne)
[ue4] Niagara's indirect draw
Explanation of time complexity and space complexity
Fundamentals of PHP deserialization
Talking about part of data storage in C language
Tensor 省略号(三个点)切片
复合类型(自定义类型)
PHP GD image upload bypass
Open under vs2019 UI file QT designer flash back problem
Web server code parsing - thread pool
Incluxdb2 buckets create database
Center and drag linked global and Chinese markets 2022-2028: Research Report on technology, participants, trends, market size and share
B2020 分糖果
NOI OPENJUDGE 1.5(23)
Qt development - scrolling digital selector commonly used in embedded system
[ue4] geometry drawing pipeline
【注意力机制】【首篇ViT】DETR,End-to-End Object Detection with Transformers网络的主要组成是CNN和Transformer