当前位置:网站首页>Analysis of development mode process based on SVN branch
Analysis of development mode process based on SVN branch
2022-07-03 15:11:00 【Brother Xing plays with the clouds】
In the use of svn The general working mode of multi person collaborative development is as follows :
Check out Library Create and maintain development branches Merge the trunk code back into branches on a regular basis , Ensure data integrity , Avoid conflicts when merging back to the trunk Branch test Merge branches back into the trunk Trunk submit 、 Deploy When many people work together , The third step is the most common problem , Seriously, it may even cause the code to be overwritten and rolled back , The reason is that the branch manager no longer pulls back data from the trunk or for a long time after creating a branch , As a result, the file and even structure of the branch are quite different from that of the trunk when it is finally merged back to the trunk , Generate more conflicts . It needs to be solved manually , A lot of time was wasted .
In response to this question , Is there a scheme to detect whether the last merged version of the branch is consistent with the trunk version when the branch is submitted , If not, it is not allowed to submit , Force everyone to form the habit of pulling data from the trunk ? If it can be achieved , Then the conflict will almost be eliminated when the branches merge back to the trunk .
The current thinking mainly includes 3 Kind of :
1. Do not emphasize the use SVN Always synchronize code from the trunk to the branch . The disadvantages of this scheme are obvious , Rely entirely on labor , Unbelievable .
2. stay trunk There is a separate one with the latest version number in readme.md, Each update trunk Update this version to the updated version number . After that, when merging and branching back to the trunk, judge the next branch readme.md Whether it is connected with that in the trunk readme.md bring into correspondence with , If it is smaller than the trunk , Force synchronization of trunk code to branch . The disadvantage of this scheme is that the version number needs to be manually maintained every time the trunk code is updated , Prone to low-level errors —— to update trunk Forget to update when readme.md Version number in .
3. SVN It records version update information , It can be done by The server End monitoring backbone , Judge before submitting (pre-commit) Check whether the last merged version number of branches is less than the trunk version number , If it is less than, it is not allowed to submit , It is mandatory to merge from the trunk first . This scheme is a relatively perfect scheme .
边栏推荐
- Global and Chinese markets of AC electromechanical relays 2022-2028: Research Report on technology, participants, trends, market size and share
- 5.2-5.3
- The first character of leetcode sword offer that only appears once (12)
- Incluxdb2 buckets create database
- ASTC texture compression (adaptive scalable texture compression)
- Idea does not specify an output path for the module
- What are the composite types of Blackhorse Clickhouse, an OLAP database recognized in the industry
- Devaxpress: range selection control rangecontrol uses
- Global and Chinese market of postal automation systems 2022-2028: Research Report on technology, participants, trends, market size and share
- How does vs+qt set the software version copyright, obtain the software version and display the version number?
猜你喜欢

Construction of operation and maintenance system
![[pytorch learning notes] datasets and dataloaders](/img/c0/9cd539caff34db3cccc44505bbe3c5.png)
[pytorch learning notes] datasets and dataloaders

Byte practice surface longitude

4-33--4-35

零拷贝底层剖析

视觉上位系统设计开发(halcon-winform)-3.图像控件

How can entrepreneurial teams implement agile testing to improve quality and efficiency? Voice network developer entrepreneurship lecture Vol.03
![Mysql报错:[ERROR] mysqld: File ‘./mysql-bin.010228‘ not found (Errcode: 2 “No such file or directory“)](/img/cd/2e4f5884d034ff704809f476bda288.png)
Mysql报错:[ERROR] mysqld: File ‘./mysql-bin.010228‘ not found (Errcode: 2 “No such file or directory“)

Vs+qt multithreading implementation -- run and movetothread

Remote server background hangs nohup
随机推荐
Chapter 14 class part 1
使用Tengine解决负载均衡的Session问题
Zero copy underlying analysis
视觉上位系统设计开发(halcon-winform)-6.节点与宫格
[transformer] Introduction - the original author of Harvard NLP presented the annotated transformer in the form of line by line implementation in early 2018
App全局异常捕获
5.2-5.3
Nppexec get process return code
视觉上位系统设计开发(halcon-winform)-5.相机
Yolov5 advanced seven target tracking latest environment construction (II)
Search in the two-dimensional array of leetcode sword offer (10)
官网MapReduce实例代码详细批注
4-33--4-35
Global and Chinese market of transfer case 2022-2028: Research Report on technology, participants, trends, market size and share
Troubleshooting method of CPU surge
redis单线程问题强制梳理门外汉扫盲
redis缓存穿透,缓存击穿,缓存雪崩解决方案
Influxdb2 sources add data sources
Incluxdb2 buckets create database
基础SQL教程