A software version control method based on baseline
Through baseline-based software version control methods, customizing baseline policies and building baseline access filters, the problem that existing application warehouse management software cannot control software dependencies is solved, and centralized control of large-scale terminal environments and software version consistency is achieved.
Patent Information
- Application Number
- CN202210377195.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-04-12
- Publication Date
- 2025-03-11
- Estimated Expiration
- 2042-04-12
AI Technical Summary
Existing application warehouse management software cannot effectively control software dependencies, resulting in complex terminal environments and high operation and maintenance costs, which cannot meet the needs of large-scale terminal management.
Using a baseline-based software version control method, by customizing the baseline policy and building the baseline access filter, the terminal device automatically matches the corresponding type of baseline, and completes the software download and installation in sequence according to the standard upgrade strategy.
It realizes centralized control of large-scale terminal environments, solves the problem of software version consistency, reduces operation and maintenance costs, and improves the management and maintenance capabilities of terminal software.
Smart Images

Figure CN114756276B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of application software implementation and maintenance, and in particular to a baseline-based software version control method. Background Art
[0002] A baseline is a snapshot of a set of software at a specific time. During the project, when the iteration ends and reaches the associated milestone, the terminal environment upgrades the software based on the baseline. The system calculates the priority of the software through an algorithm based on the type and weight of the software and generates an upgrade strategy, which controls the upgrade order of the software.
[0003] The baseline software version control method is designed for the management and maintenance of large-scale terminal application software. It can be used for application warehouse software management and can greatly facilitate users' online installation and upgrade. Through this version control method, the software is centrally managed, the operation and maintenance costs are reduced, the needs of large-scale terminal management are met, and a standardized operation and maintenance management system is formed.
[0004] The mainstream domestic application warehouse management software can manage independent software, and the terminal environment can access the application warehouse to download software and independently install and upgrade it. This type of software cannot control software dependencies, and the software cannot be executed in sequence. As the number and versions of connected software increase, the terminal environment becomes complex, and the operation and maintenance costs continue to increase. Traditional application warehouse management software cannot effectively solve the above problems. Summary of the invention
[0005] In view of the above problems, the present invention is proposed to provide a baseline-based software version control method that overcomes the above problems or at least partially solves the above problems.
[0006] According to one aspect of the present invention, a baseline-based software version control method is provided, comprising:
[0007] Customize baseline strategies;
[0008] Terminal software is put on the application warehouse according to version specifications, and software types are classified and managed;
[0009] Initial baseline, which selects each software version to be incorporated to form a snapshot at a specific time period;
[0010] Build a baseline access filter. According to the baseline type filtering rules, the terminal device automatically matches the corresponding type of baseline and completes the download and installation of the software in sequence according to the standardized upgrade strategy;
[0011] During the project, when an iteration ends and reaches the associated milestone, a new baseline is established;
[0012] Based on the new baseline, the terminal equipment completes the download and upgrade of software in sequence according to the standardized upgrade strategy;
[0013] During the grayscale period, some terminal devices will download and upgrade the software in sequence based on the grayscale release baseline and in accordance with the standardized upgrade strategy;
[0014] In the later stage of grayscale, the baseline is merged into the milestone baseline, and the terminal devices smoothly transition to the milestone baseline.
[0015] Optionally, the classification management of software types specifically includes: the software types include application software, platform software and basic software.
[0016] Optionally, the custom baseline strategy specifically includes:
[0017] Baseline type, which constrains the incorporated software, including terminal operating system, chip version, and network classification information; if the selected software does not match the baseline characteristics, it cannot be incorporated;
[0018] Upgrade strategy, which controls the installation and upgrade sequence of baseline software on terminal devices. The upgrade strategy depends on the classification type and upgrade weight of the software.
[0019] The system uses an algorithm to calculate the priority of the software according to the classification type and the upgrade weight of the software and generates an upgrade strategy, and controls the upgrade order of the software according to the upgrade strategy;
[0020] The upgrade order is based on the classification type, with the priority of basic software, platform software, and application software being from high to low. Software of the same type is prioritized according to the upgrade weight.
[0021] Optionally, the software types specifically include:
[0022] Application software is software provided to meet the application needs of users in different fields and for different problems, such as office software, Internet software, analysis software, etc., which is dependent on platform software and basic software;
[0023] Platform software is software that links applications and the infrastructure and architecture that they run on, making it easy to integrate and manage, such as driver software, database software, and support software, which are dependent on basic software;
[0024] Basic software is software used to provide a basic operating environment for application software and platform software, such as an operating system and a Java operating environment. It has no dependencies on application software and platform software, but there are dependencies within the basic software.
[0025] Optionally, the building of the baseline access filter, according to the baseline type filtering rule, the terminal device automatically matches the baseline of the corresponding type specifically includes:
[0026] Terminal devices access the application warehouse service through a standardized REST interface;
[0027] Obtain the initial baseline of the corresponding type based on the characteristic information carried by the terminal device, including the operating system, chip version, and network classification information;
[0028] Downloading the installation program corresponding to the software version included in the initial baseline;
[0029] Based on the baseline upgrade strategy, complete the software installation in sequence. During the baseline installation process, if the basic software installation fails, exit the installation process; if the non-basic software installation fails, continue.
[0030] If the software installation fails, the failure location will be recorded and the installation process will be restored from the failure point the next time.
[0031] Optionally, completing the download and upgrade of the software in sequence according to the standard upgrade strategy specifically includes:
[0032] Terminal devices access the application warehouse service through a standardized REST interface;
[0033] According to the characteristic information carried by the terminal device and based on the baseline version of the local environment, a new baseline is obtained;
[0034] The local environment baseline is compared with the new baseline. If the local environment baseline version is lower than the new baseline version, the baseline upgrade is performed; if the local environment baseline version is higher than the new baseline version, the baseline upgrade is not performed.
[0035] After obtaining the baseline, download the installer corresponding to the software version included in the baseline;
[0036] Based on the baseline upgrade strategy, the software upgrade is completed in sequence. During the baseline upgrade process, if the basic software upgrade fails, the upgrade process will be exited; if the non-basic software upgrade fails, the upgrade process will continue;
[0037] If the software upgrade fails, the fault location will be recorded and the upgrade process will be restored from the fault point during the next upgrade.
[0038] The software version control method based on baseline provided by the present invention includes: custom baseline strategy; terminal software is put on the application warehouse according to the version specification, and the software type is classified and managed; initial baseline, each software version to be incorporated is selected to form a snapshot of a specific period; baseline access filter is constructed, and according to the baseline type filtering rule, the terminal device automatically matches the baseline of the corresponding type, and completes the download and installation of the software in sequence according to the standardized upgrade strategy; during the project process, when the iteration ends at the associated milestone, a new baseline is established; the terminal device completes the download and upgrade of the software in sequence according to the standardized upgrade strategy based on the new baseline; during the grayscale period, some terminal devices complete the download and upgrade of the software in sequence according to the standardized upgrade strategy based on the baseline released by the grayscale; in the later stage of the grayscale, the baseline is merged into the milestone baseline, and the terminal device smoothly transitions to the milestone baseline. Combining version control and baseline strategy, centralized control of large-scale terminal environment is realized, the situation that there are many client software versions, the dependency relationship between versions is complex, and it is not convenient to maintain is solved, the barriers of traditional application warehouse software management are broken, and the ability of centralized management and maintenance of terminal software is improved.
[0039] The above description is only an overview of the technical solution of the present invention. In order to more clearly understand the technical means of the present invention, it can be implemented according to the contents of the specification. In order to make the above and other purposes, features and advantages of the present invention more obvious and easy to understand, the specific implementation methods of the present invention are listed below. BRIEF DESCRIPTION OF THE DRAWINGS
[0040] In order to more clearly illustrate the technical solutions of the embodiments of the present invention, the accompanying drawings required for use in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other accompanying drawings can be obtained based on these accompanying drawings without paying creative work.
[0041] Figure 1 A flowchart of a baseline-based software version control method provided by an embodiment of the present invention;
[0042] Figure 2 A diagram showing the relationship between the baseline and the software version provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0043] The exemplary embodiments of the present disclosure will be described in more detail below with reference to the accompanying drawings. Although the exemplary embodiments of the present disclosure are shown in the accompanying drawings, it should be understood that the present disclosure can be implemented in various forms and should not be limited by the embodiments set forth herein. On the contrary, these embodiments are provided to enable a more thorough understanding of the present disclosure and to fully convey the scope of the present disclosure to those skilled in the art.
[0044] The terms "comprises" and "having" and any variations thereof in the description embodiments, claims and drawings of the present invention are intended to cover non-exclusive inclusions, for example, including a series of steps or units.
[0045] The technical solution of the present invention is further described in detail below in conjunction with the accompanying drawings and embodiments.
[0046] like Figure 1 As shown, a baseline-based software version control method is provided, which uses an application warehouse to perform software version control and uses a baseline to implement software dependency management. The control method includes:
[0047] Customize the baseline strategy and determine the baseline type and upgrade strategy.
[0048] The baseline type constrains the incorporated software. The type is composed of the terminal operating system, chip version, and network classification information. If the selected software does not match the baseline characteristics, it cannot be incorporated.
[0049] The upgrade strategy controls the installation and upgrade order of the baseline software on the terminal device. The upgrade strategy depends on the classification type and upgrade weight of the software. The system calculates the priority of the software through an algorithm based on the type and weight of the software and generates an upgrade strategy. The upgrade order of the software is controlled by the upgrade strategy.
[0050] Terminal software is put on the application warehouse according to version specifications, and software types are classified and managed into application software, platform software, and basic software;
[0051] Application software is software provided to meet the application needs of users in different fields and for different problems, such as office software, Internet software, analysis software, etc., which is dependent on platform software and basic software;
[0052] Platform software is software that links applications and the infrastructure and architecture that they run on, making it easy to integrate and manage, such as driver software, database software, and support software, which are dependent on basic software;
[0053] Basic software is software used to provide a basic operating environment for application software and platform software, such as operating systems, Java Runtime Environment (JRE), etc. It has no dependence on application software and platform software, but there will be dependencies between basic software.
[0054] Initial baseline, which selects each software version to be incorporated to form a snapshot at a specific time period;
[0055] Build a baseline access filter. According to the baseline type filtering rules, the terminal device automatically matches the corresponding type of baseline and completes the software download and installation in sequence according to the standardized upgrade strategy.
[0056] Terminal devices access the application warehouse service through a standardized REST interface;
[0057] Obtain the initial baseline of the corresponding type based on the characteristic information carried by the terminal device, including the operating system, chip version, and network classification information;
[0058] After obtaining the baseline, download the installer corresponding to the software version included in the baseline;
[0059] Based on the baseline upgrade strategy, complete the software installation in sequence;
[0060] If the software installation fails, the failure location will be recorded and the installation process will be restored from the failure point the next time.
[0061] During the project, when an iteration ends and reaches the associated milestone, a new baseline is established;
[0062] Based on the new baseline, the terminal device completes the software download and upgrade in sequence according to the standardized upgrade strategy.
[0063] Terminal devices access the application warehouse service through a standardized REST interface;
[0064] According to the characteristic information carried by the terminal device and based on the baseline version of the local environment, a new baseline is obtained;
[0065] The local environment baseline is compared with the new baseline. If the local environment baseline version is lower than the new baseline version, the baseline upgrade is performed; if the local environment baseline version is higher than the new baseline version, the baseline upgrade is not performed.
[0066] After obtaining the baseline, download the installer corresponding to the software version included in the baseline;
[0067] Based on the baseline upgrade strategy, complete the software upgrade in sequence;
[0068] If the software upgrade fails, the fault location will be recorded and the upgrade process will be restored from the fault point during the next upgrade.
[0069] During the grayscale period, some terminal devices will download and upgrade the software in sequence based on the grayscale release baseline and in accordance with the standardized upgrade strategy;
[0070] Terminal devices access the application warehouse service through a standardized REST interface;
[0071] According to the characteristic information carried by the terminal device and based on the baseline version of the local environment, a new baseline is obtained;
[0072] The local environment baseline is compared with the new baseline. If the local environment baseline version is lower than the new baseline version, the baseline upgrade is performed; if the local environment baseline version is higher than the new baseline version, the baseline upgrade is not performed.
[0073] After obtaining the baseline, download the installer corresponding to the software version included in the baseline;
[0074] Based on the baseline upgrade strategy, complete the software upgrade in sequence;
[0075] If the software upgrade fails, the fault location will be recorded and the upgrade process will be restored from the fault point during the next upgrade.
[0076] In the later stage of grayscale, the grayscale baseline smoothly transitions to the milestone baseline by merging with the milestone baseline;
[0077] Perform version conflict check before merging, comparing the number and version size of the baseline software with the latest milestone baseline software;
[0078] If there is no conflict, it will be merged into the milestone baseline; if there is a conflict, it cannot be merged into the milestone baseline, and the version conflict needs to be resolved before merging the baseline again.
[0079] Beneficial effects:
[0080] The present invention is based on software version control and introduces a baseline upgrade control strategy. Through baseline-based software version control, the management of software dependencies is achieved, solving the problem of software version consistency in complex terminal environments.
[0081] The present invention combines version control and baseline strategy to achieve centralized control of large-scale terminal environments, breaking the barriers of traditional application warehouse software management and improving the ability to centrally manage and maintain terminal software;
[0082] The baseline upgrade control strategy mentioned in the present invention can effectively avoid cross-version incompatibility during software upgrades. It can especially solve the problem in the field of information technology innovation where there are multiple application software versions on domestic terminals and the dependencies between software versions are complex.
[0083] The above specific implementation methods further illustrate the objectives, technical solutions and beneficial effects of the present invention in detail. It should be understood that the above are only specific implementation methods of the present invention and are not intended to limit the scope of protection of the present invention. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present invention should be included in the scope of protection of the present invention.
Claims
1. A baseline-based software version control method, characterized in that: The control method comprises: Customized baseline policies, including: Baseline type, which constrains the incorporated software, including terminal operating system, chip version, and network classification information; if the selected software does not match the baseline characteristics, it cannot be incorporated; Upgrade strategy, which controls the installation and upgrade sequence of baseline software on terminal devices. The upgrade strategy depends on the classification type and upgrade weight of the software. The system uses an algorithm to calculate the priority of the software according to the classification type and the upgrade weight of the software and generates an upgrade strategy, and controls the upgrade order of the software according to the upgrade strategy; The upgrade order is based on the classification type, with the priority of basic software, platform software, and application software from high to low. The priority of software of the same type is calculated according to the upgrade weight. Terminal software is put on the application warehouse according to version specifications, and software types are classified and managed; Build an initial baseline, selecting each software version to be incorporated to form a snapshot at a specific time period; Build a baseline access filter. According to the baseline type filtering rules, the terminal device automatically matches the corresponding type of baseline, including: Terminal devices access the application warehouse service through a standardized REST interface; Obtain the initial baseline of the corresponding type based on the characteristic information carried by the terminal device, including the operating system, chip version, and network classification information; Downloading the installation program corresponding to the software version included in the initial baseline; Based on the baseline upgrade strategy, complete the software installation in sequence. During the baseline installation process, if the basic software installation fails, exit the installation process; if the non-basic software installation fails, continue. If the software installation fails, the fault location will be recorded and the installation process will be restored from the fault point the next time the software is installed. Complete the download and installation of the software in sequence according to the standard upgrade strategy, including: Terminal devices access the application warehouse service through a standardized REST interface; According to the characteristic information carried by the terminal device and based on the baseline version of the local environment, a new baseline is obtained; The local environment baseline is compared with the new baseline. If the local environment baseline version is lower than the new baseline version, the baseline upgrade is performed; if the local environment baseline version is higher than the new baseline version, the baseline upgrade is not performed. After obtaining the baseline, download the installer corresponding to the software version included in the baseline; Based on the baseline upgrade strategy, the software upgrade is completed in sequence. During the baseline upgrade process, if the basic software upgrade fails, the upgrade process will be exited; if the non-basic software upgrade fails, the upgrade process will continue; If the software upgrade fails, the fault location will be recorded and the upgrade process will be restored from the fault point the next time the software is upgraded. During the software download and installation process, the iteration ends when the relevant milestone is reached and a new baseline is established; Based on the new baseline, the terminal equipment completes the download and upgrade of software in sequence according to the standardized upgrade strategy; During the grayscale period, some terminal devices will download and upgrade the software in sequence based on the grayscale release baseline and in accordance with the standardized upgrade strategy; In the later stage of grayscale, the baseline is merged into the milestone baseline, and the terminal devices smoothly transition to the milestone baseline.
2. The baseline-based software version control method according to claim 1, characterized in that: The classification management of software types specifically includes: the software types include application software, platform software and basic software.
3. The baseline-based software version control method according to claim 1, characterized in that: The software types specifically include: Application software is software provided to meet the application needs of users in different fields and for different problems, including office software, Internet software, and analysis software, which are dependent on platform software and basic software; Platform software is software that links applications and the infrastructure and architecture that they run on, making it easy to integrate and manage. It includes driver software, database software, and support software, and is dependent on basic software; Basic software is software used to provide a basic operating environment for application software and platform software, including operating systems and Java operating environments. It has no dependencies on application software and platform software, but there will be dependencies within the basic software.
Citation Information
Patent Citations
Method and apparatus for managing network configuration
CN101494563A
Gray release method and system
CN111949311A