Project release management method and system

Through the BalmGitFlow tool and balm.env.js configuration file, the project release process in traditional software development is simplified, the problems of inefficient project release and high operation and maintenance costs are solved, efficient project release management is achieved, and operation and maintenance costs are reduced. and human error occurs.

CN119201194APending Publication Date: 2024-12-27SHANGHAI YIBAN ENTERPRISE DEVELOPMENT CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411261801.3
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-10
Publication Date
2024-12-27

AI Technical Summary

Technical Problem

The project release process in traditional software development is cumbersome and error-prone, resulting in inefficient project release and high operation and maintenance costs. Especially the unclear front and back-end configurations lead to developers wasting time and energy.

Method used

Provide a project release management method and system, using the BalmGitFlow tool and balm.env.js configuration file to simplify the project release process into several commands, including global installation of BalmGitFlow, creating configuration files, initializing branches and packaging and updating code, supporting code Publish to different environments with one click.

Benefits of technology

The project release process has been simplified, the release efficiency has been improved, the operation and maintenance costs have been reduced, human errors have been avoided, and the stable operation of the project has been ensured.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119201194A_ABST
    Figure CN119201194A_ABST
Patent Text Reader

Abstract

The invention provides a project release management method and system. The method comprises the following steps: globally installing a BalmGitFlow tool; creating a balm.env.js configuration file under the project root directory, and configuring a project source code, a branch of a target server and a corresponding packaging command; the method comprises the following steps of: initializing a project code library branch by using a ball-bit-dock command; creating a new demand branch from the source code branch by using a ball-ge-dev command; and the code is packaged and updated to a specified branch by using a ball-bit-rod command. The system comprises: a command line interface module, which is used for providing a BalmGitFlow command line tool; the branch management module is used for managing Git branches, including creating branches, switching branches and merging branches; the publishing management module is used for managing a project publishing process, including executing a packaging command and updating a code; and the configuration analysis module is used for analyzing the balm.env.js configuration file and obtaining the project source code and the branch information of the target server. According to the invention, the problems of low project release efficiency and high operation and maintenance cost in the existing software development can be solved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention belongs to the field of computer software technology, and more specifically, relates to a project release management method and system. Background Art

[0002] In traditional software development, the project release process usually involves multiple steps, such as code merging, building code, version tagging, and uploading files. These steps are cumbersome, error-prone, and time-consuming. During the project submission test phase, front-end developers often need to compress the project package file and pass it to the back-end developer, and then the back-end will configure the front-end project according to the project environment. Such manual operations often easily lead to some code version conflicts, and then the front-end and back-end need to spend time to troubleshoot the problems again. During the operation and maintenance formal project release phase, operation and maintenance personnel often do not understand how to configure the front-end and back-end projects due to lack of experience, and then ask the front-end and back-end developers for guidance on the configuration (but allow developers to directly operate the operation and maintenance work), which greatly wastes the time and energy of developers and leads to inefficient updates and iterations of company projects. Summary of the invention

[0003] The purpose of the present invention is to solve the problems of low project release efficiency and high operation and maintenance cost in existing software development.

[0004] In order to achieve the above object, the present invention provides a project release management method and system.

[0005] According to a first aspect of the present invention, a project release management method is provided, the project release management method comprising the following steps:

[0006] Install the BalmGitFlow tool globally;

[0007] Create the balm.env.js configuration file in the project root directory, configure the project source code and the branch of the target server and the corresponding packaging command;

[0008] Use the balm-git-doctor command to initialize the project code base branch;

[0009] Use the balm-git-dev command to create a new requirement branch from the source branch;

[0010] Use the balm-git-prod command to package and update the code to the specified branch.

[0011] Optionally, configure the project source code and target server branch information through the balm.env.js configuration file, and use the balm-git-prod command to publish the code to different environments with one click.

[0012] According to a second aspect of the present invention, there is provided a project release management system, which is used to implement any of the above-mentioned project release management methods and includes the following functional modules:

[0013] Command line interface module, used to provide BalmGitFlow command line tool;

[0014] Branch management module, used to manage Git branches, including creating branches, switching branches, and merging branches;

[0015] Release management module, used to manage the project release process, including executing packaging commands and updating codes;

[0016] Configure the parsing module to parse the balm.env.js configuration file and obtain the project source code and branch information of the target server.

[0017] Optionally, the balm.env.js configuration file supports configuration of multiple target servers and their corresponding branch information, so as to implement one-click publishing of codes to multiple environments.

[0018] The beneficial effects of the present invention are:

[0019] The project release management method of the present invention firstly installs the BalmGitFlow tool globally; secondly, creates a balm.env.js configuration file in the project root directory to configure the project source code and the branch of the target server and the corresponding packaging command; thirdly, uses the balm-git-doctor command to initialize the project code library branch; thirdly, uses the balm-git-doctor command to initialize the project code library branch; finally, uses the balm-git-doctor command to initialize the project code library branch.

[0020] The project release management method of the present invention provides a simple and easy-to-use project release management solution, which can simplify the complex project release process into three commands, so that even operation and maintenance personnel who are not familiar with the code release process can easily get started. The project release management method of the present invention can help enterprises improve project release efficiency, reduce operation and maintenance costs, avoid human errors, and ensure stable operation of projects.

[0021] The project release management system of the present invention and the above-mentioned project release management method belong to a general inventive concept, and have at least the same beneficial effects as the above-mentioned project release management method, and its beneficial effects are not repeated here.

[0022] Other features and advantages of the present invention will be described in detail in the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] The present invention may be better understood by referring to the following description taken in conjunction with the accompanying drawings, in which the same or similar reference numerals are used throughout the drawings to represent the same or similar components.

[0024] Figure 1 A flowchart for implementing a project release management method according to an embodiment of the present invention is shown. DETAILED DESCRIPTION

[0025] In order to enable those skilled in the art to more fully understand the technical solution of the present invention, the exemplary embodiments of the present invention will be described in more comprehensive and detailed in conjunction with the accompanying drawings below. Obviously, the one or more embodiments of the present invention described below are only one or more of the specific ways in which the technical solution of the present invention can be implemented, and are not exhaustive. It should be understood that other ways belonging to a general inventive concept can be used to implement the technical solution of the present invention, and should not be limited by the exemplary embodiments described. Based on one or more embodiments of the present invention, all other embodiments obtained by ordinary technicians in the field without making creative work should fall within the scope of protection of the present invention.

[0026] Example: Figure 1 The following is a flowchart showing an implementation of a project release management method according to an embodiment of the present invention.

[0027] Reference Figure 1 The project release management method of the embodiment of the present invention comprises the following steps:

[0028] Step S100, globally install the BalmGitFlow tool;

[0029] Step S200: Create a balm.env.js configuration file in the project root directory, configure the project source code and the branch of the target server and the corresponding packaging command;

[0030] Step S300, use the balm-git-doctor command to initialize the project code library branch;

[0031] Step S400: Use the balm-git-dev command to create a new requirement branch from the source code branch;

[0032] Step S500: Use the balm-git-prod command to package and update the code to a specified branch.

[0033] Furthermore, in the embodiment of the present invention, the project source code and the branch information of the target server are configured through the balm.env.js configuration file, and the balm-git-prod command is used to implement one-click publishing of the code to different environments.

[0034] Specifically, the embodiment of the present invention implements project release management based on BalmGitFlow. BalmGitFlow is a project release management solution based on Node.js. It simplifies the complex release process into three simple commands. Even people who are not familiar with the code release process can easily get started, greatly improving operation and maintenance efficiency.

[0035] Specifically, the project release management method of the embodiment of the present invention mainly includes the following processes:

[0036] Install BalmGitFlow: Install the BalmGitFlow tool on your computer;

[0037] Configure the project: Create the balm.env.js configuration file in the project root directory to configure the project source code, the branch of the target server (test server, production server, etc.), and the corresponding packaging commands;

[0038] Initialize branches: Use the balm-git-doctor command to initialize each branch of the project code repository;

[0039] Create a demand branch: Based on new requirements, use the balm-git-dev command to automatically create a new demand branch from the source branch;

[0040] Package and update code: After development is completed, use the balm-git-prod command to directly package and update the code to the specified branch;

[0041] Operation and maintenance release project: The operation and maintenance personnel enter the specified project directory, confirm the branch name of the corresponding server, and use the git pull command to complete the online release.

[0042] Among them, the server branches of the configuration project can not only be branches of the current code base, but also branches of any remote code base; the balm-git-doctor command will automatically plan which servers the code will be updated to according to the configuration. If you need to expand the server, you only need to update the configuration file and run this command again; for developers who have completed the code update, it is equivalent to notifying the operation and maintenance personnel to release it with just one command; when the operation and maintenance personnel use it for the first time, they need to download the code to the server first, and then only one command is needed to complete the daily code update and release; although BalmGitFlow mainly optimizes the release process management for front-end projects, its essence is still an extension and optimization of the Git distributed version control software, so in fact it can also be applied to the back-end and even all projects using Git libraries.

[0043] Accordingly, based on the project release management method of the embodiment of the present invention, the embodiment of the present invention further proposes a project release management system, which is used to implement the above-mentioned project release management method.

[0044] The project release management system of the embodiment of the present invention includes the following functional modules:

[0045] The command line interface module is used to provide the BalmGitFlow command line tool for performing various operations;

[0046] The branch management module is used to manage Git branches, including creating branches, switching branches, and merging branches;

[0047] Release management module, used to manage the project release process, including executing packaging commands and updating codes;

[0048] Configure the parsing module to parse the balm.env.js configuration file and obtain the project source code and branch information of the target server.

[0049] Furthermore, in the embodiment of the present invention, the balm.env.js configuration file supports configuring multiple target servers and their corresponding branch information, so as to realize one-click publishing of codes to multiple environments.

[0050] Although one or more embodiments of the present invention are described above, it should be known to those skilled in the art that the present invention can be implemented in any other form without departing from its subject matter and scope. Therefore, the embodiments described above are illustrative rather than restrictive, and many modifications and substitutions are obvious to those skilled in the art without departing from the spirit and scope of the present invention as defined in the appended claims.

Claims

1. A project release management method, characterized in that: include: Install the BalmGitFlow tool globally; Create the balm.env.js configuration file in the project root directory, configure the project source code and the branch of the target server and the corresponding packaging command; Use the balm-git-doctor command to initialize the project code base branch; Use the balm-git-dev command to create a new requirement branch from the source branch; Use the balm-git-prod command to package and update the code to the specified branch.

2. The project release management method according to claim 1, characterized in that: Configure the project source code and target server branch information through the balm.env.js configuration file, and use the balm-git-prod command to publish the code to different environments with one click.

3. A project release management system for implementing the project release management method according to claim 1 or 2, characterized in that: include: Command line interface module, used to provide BalmGitFlow command line tool; Branch management module, used to manage Git branches, including creating branches, switching branches, and merging branches; Release management module, used to manage the project release process, including executing packaging commands and updating codes; Configure the parsing module to parse the balm.env.js configuration file and obtain the project source code and branch information of the target server.

4. The project release management system according to claim 3, characterized in that: The balm.env.js configuration file supports configuring multiple target servers and their corresponding branch information, and implements one-click publishing of codes to multiple environments.