CN111104125B - Intelligent integrated version management method, device, medium and electronic equipment - Google Patents

Intelligent integrated version management method, device, medium and electronic equipment Download PDF

Info

Publication number
CN111104125B
CN111104125B CN201911130928.0A CN201911130928A CN111104125B CN 111104125 B CN111104125 B CN 111104125B CN 201911130928 A CN201911130928 A CN 201911130928A CN 111104125 B CN111104125 B CN 111104125B
Authority
CN
China
Prior art keywords
version
item
information
rollback
latest
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911130928.0A
Other languages
Chinese (zh)
Other versions
CN111104125A (en
Inventor
臧卓
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Taikang Insurance Group Co Ltd
Original Assignee
Taikang Insurance Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Taikang Insurance Group Co Ltd filed Critical Taikang Insurance Group Co Ltd
Priority to CN201911130928.0A priority Critical patent/CN111104125B/en
Publication of CN111104125A publication Critical patent/CN111104125A/en
Application granted granted Critical
Publication of CN111104125B publication Critical patent/CN111104125B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1433Saving, restoring, recovering or retrying at system level during software upgrading
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • G06Q50/26Government or public services

Abstract

The embodiment of the invention provides an intelligent integrated version management method, an intelligent integrated version management device, a medium and electronic equipment, wherein the method comprises the following steps: determining the latest version of the item in response to receiving an issuing command of the user to the item; after the latest version of the item is determined, pulling the code of the latest version of the item from the Git server, and issuing the latest version of the item to the Web server; after the latest version of the item is released, version information and state information corresponding to the latest version of the item are locally recorded; in response to receiving a user's rollback command for the item, a rollback version of the item is determined based on the locally recorded version information and the state information, and a rollback operation is performed according to the rollback version of the item. The technical scheme of the embodiment of the invention realizes the high efficiency, the simplification and the intensification of the version management, and improves the reliability of the version management.

Description

Intelligent integrated version management method, device, medium and electronic equipment
Technical Field
The invention relates to the technical field of product management, in particular to an intelligent integrated version management method, an intelligent integrated version management device, a medium and electronic equipment.
Background
In the field of the pension industry, pension-related systems and intelligent devices are layered endlessly, and the systems and the intelligent devices form an intelligent pension service ecological chain. Along with the continuous promotion of the complexity of intelligent endowment service ecological chain, the endowment product is also continuous complicating, and traditional product management mode has hardly satisfied actual demand. Taking the aged care products pushed out by Taikang as an example, the current Taikang products are manually labeled (i.e. Tag used for representing the version number of the products) by staff, and the staff manually selects the version of the products to be on line when the products are on line, and the problems of wrong versions of the products and the like often occur because the manual selection of the labels is needed to be on line. In addition, when a problem occurs after a product is on line, a history-stabilized version of the product needs to be traced back by means of personal memory, and the history-stabilized version needs to be queried by staff making a one-to-one comparison in a code warehouse, so rollback is inefficient and error-prone.
It should be noted that the information disclosed in the above background section is only for enhancing understanding of the background of the invention and thus may include information that does not form the prior art that is already known to those of ordinary skill in the art.
Disclosure of Invention
In order to overcome the problems in the prior art described above, according to one embodiment of the present invention, an intelligent integrated version management method is provided, which is also applicable to managing other software products in addition to the pension products. The method comprises the following steps: in response to receiving an issue command of a user for an item, determining the latest version of the item; after the latest version of the item is determined, pulling the code of the latest version of the item from the Git server, and releasing the latest version of the item to the Web server; after the latest version of the item is released, version information and state information corresponding to the latest version of the item are recorded locally; the version information is used for determining the front-back relation between the corresponding version and other versions of the item, and the state information is used for indicating whether the corresponding version is a stable version or not; and in response to receiving a user's rollback command for the item, determining a rollback version of the item based on the locally recorded version information and the state information, and performing a rollback operation according to the rollback version of the item.
In the above method, locally recording the state information corresponding to the latest version of the item includes: setting state information of the latest version of the item to indicate stable, and locally saving; in response to receiving a user's rollback command for the item, state information for the latest version of the item is set to indicate failure and saved locally.
In the above method, determining the rollback version of the item based on the locally recorded version information and the state information includes: acquiring all stable versions of the item based on the locally recorded state information; based on the locally recorded version information, a stable version which is before and closest to the latest version of the item is selected from all stable versions of the item as a rollback version of the item.
In the method, the rollback command of the user to the project comprises version information; and determining the rollback version of the item based on the locally recorded version information and the state information comprises: determining whether version information in the rollback command is included in version information of all versions of the item recorded locally; and responding to the fact that version information of all versions of the item of the local record comprises version information in the rollback command, acquiring state information of a version corresponding to the version information in the rollback command of the local record, and taking the version corresponding to the version information in the rollback command as a rollback version of the item if the acquired state information indicates that the version corresponding to the version information in the rollback command is a stable version.
In the above method, in response to receiving a command issued by a user to an item, determining the latest version of the item includes: acquiring version information of a last created version of the item from the Git server; and determining whether version information of the last created version is included in version information of all versions of the item recorded locally, and if not, taking the last created version as the latest version of the item.
In the method, the release command of the user to the project comprises version information; and in response to receiving a command issued by a user to an item, determining the latest version of the item includes: determining whether version information of all versions of the item recorded locally includes version information in the issue command; and in response to determining that version information of all versions of the locally recorded item does not comprise version information in the issuing command, searching whether a version corresponding to the version information in the issuing command exists in the Git, and if so, taking the version corresponding to the version information in the issuing command as the latest version of the item.
The method may further include: acquiring a download address of the latest version of the mobile terminal application from a file server; and sending the download address of the latest version of the mobile terminal application to the mobile device.
According to an embodiment of the present invention, there is also provided an intelligent integrated version management apparatus including:
the version determining module is used for determining the latest version of the project in response to receiving an issuing command of a user on the project;
the issuing module is used for pulling codes of the latest version of the project from the Git server after the latest version of the project is determined, and issuing the latest version of the project to the Web server;
the recording module is used for locally recording version information and state information corresponding to the latest version of the item after the latest version of the item is released; the version information is used for determining the front-back relation between the corresponding version and other versions of the item, and the state information is used for indicating whether the corresponding version is a stable version or not;
and the rollback module is used for responding to receiving a rollback command of a user on the project, determining a rollback version of the project based on the locally recorded version information and the state information, and performing rollback operation according to the rollback version of the project.
According to an embodiment of the present invention, there is also provided a computer readable medium having stored thereon a computer program which, when executed by a processor, implements the intelligent integrated version management method as described in the above embodiments.
According to an embodiment of the present invention, there is also provided an electronic apparatus including: one or more processors; and a storage means for storing one or more computer programs which, when executed by the one or more processors, cause the electronic device to implement the intelligent integrated version management method as described in the above embodiments.
The technical scheme provided by the embodiment of the invention can have the following beneficial effects:
the embodiment of the invention utilizes the version identification and the state information of the item in the Git server to determine the latest version and the rollback version of the item, can realize automatic release and rollback of the latest version of the item without manually setting and selecting the version number by a user, solves the problem of high error rate when manually setting and selecting the version number, and improves the efficiency of release and rollback and the reliability of version management. The user does not need to memorize the history version number of the project, the burden of the user is reduced, the project can be released and returned by one key, the operation of the user is convenient, the manpower maintenance cost is saved, and the threshold of the user is reduced. In addition, the user can still specify the version which the user desires to release or the version which the user desires to fall back to by providing the version identification, so that the flexibility of version management is improved. Because version identification and state information (including both release-successful versions and release-failed versions) of all released versions of the project are stored, the development process of files and catalogs in the project development process can be tracked, and convenience is provided for project developers. The embodiment of the invention actually provides an intensive version management scheme, and provides version management for mobile terminal applications besides automatic release and rollback of Web projects.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the invention as claimed.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and together with the description, serve to explain the principles of the invention. It is evident that the drawings in the following description are only some embodiments of the present invention and that other drawings may be obtained from these drawings without inventive effort for a person of ordinary skill in the art. In the drawings:
FIG. 1 schematically illustrates a flow diagram of an intelligent integrated version management method according to one embodiment of the invention;
FIG. 2 schematically illustrates an architecture diagram of a version management system including an intelligent integrated version management device, in accordance with one embodiment of the present invention;
FIG. 3 schematically illustrates a table structure diagram of a local database of an intelligent integrated version management device according to one embodiment of the present invention;
FIG. 4 schematically illustrates a block diagram of an intelligent integrated version management apparatus according to one embodiment of the present invention;
fig. 5 schematically shows a schematic diagram of a computer system suitable for use in implementing an embodiment of the invention.
Detailed Description
Example embodiments will now be described more fully with reference to the accompanying drawings. However, the exemplary embodiments may be embodied in many forms and should not be construed as limited to the examples set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the example embodiments to those skilled in the art.
Furthermore, the described features, structures, or characteristics may be combined in any suitable manner in one or more embodiments. In the following description, numerous specific details are provided to give a thorough understanding of embodiments of the invention. One skilled in the relevant art will recognize, however, that the invention may be practiced without one or more of the specific details, or with other methods, components, devices, steps, etc. In other instances, well-known methods, devices, implementations, or operations are not shown or described in detail to avoid obscuring aspects of the invention.
The block diagrams depicted in the figures are merely functional entities and do not necessarily correspond to physically separate entities. That is, the functional entities may be implemented in software, or in one or more hardware modules or integrated circuits, or in different networks and/or processor devices and/or microcontroller devices.
The flow diagrams depicted in the figures are exemplary only, and do not necessarily include all of the elements and operations/steps, nor must they be performed in the order described. For example, some operations/steps may be decomposed, and some operations/steps may be combined or partially combined, so that the order of actual execution may be changed according to actual situations.
According to one embodiment of the present invention, an intelligent integrated version management method is provided.
Fig. 1 schematically shows a flow chart of an intelligent integrated version management method according to an embodiment of the invention, comprising steps S11-S15. The execution subject of the intelligent integrated version management method may be a server or a terminal having computing and storage functions, and for example, the intelligent integrated version management method may be executed by an electronic device such as an intelligent integrated version management device. As shown in fig. 2, the intelligent integrated version management device may be connected with a Git (distributed version control system) server, a file server, and a Web server, and provide an interactive interface (not shown in fig. 2) to interact with a user.
The steps of the intelligent integrated version management method are described below in conjunction with fig. 1-2:
and S11, responding to the received command issued by the user to the project, and determining the latest version of the project.
The user may send an issue command regarding the latest version of the project (e.g., web project) to the intelligent integrated version management device via the interactive interface. The user may specify a version desired to be released, for example, may include item information (such as an item name or an item identifier) and a version identifier (such as a Git version id, hereinafter simply referred to as a version identifier) of the version desired to be released in the Git server in the release command; the user may also not specify a version, for example by merely clicking on a key associated with the release of an item at his terminal, such as a PC terminal or a mobile device terminal, to send a release order regarding the latest version of the item, wherein different items correspond to different keys.
The intelligent integrated version management device determines the latest version of the item after receiving an issued command of the user to the item, and the process comprises the following sub-steps:
s111, analyzing the received issuing command by the intelligent integrated version management equipment, and executing S112 if version identification and project information are obtained through analysis; if the item information is obtained by parsing but the version identification is not obtained, step S113 is executed.
Step S112, the intelligent integrated version management equipment determines whether the version corresponding to the version identifier in the issuing command is the latest version of the item.
The intelligent integrated version management device comprises a local database, fig. 3 shows a table structure of the local database of the intelligent integrated version management device according to one embodiment of the present invention, and as shown in fig. 3, version identifiers (as described above, git version ids) and state information corresponding to all published versions of an item are stored in the database; wherein the version identifier is a unique identifier allocated by the Git server to each version of the item, in general, the version identifier of the post-created version of the item in the Git server is larger than the version identifier of the previously created version, i.e. the version identifier can be used to determine the context between the versions; the state information may be represented by 0 or 1, where 1 indicates that the version corresponding to the state information is a stable version, and 0 indicates that the version corresponding to the state information is a failed version (i.e., an unstable version). By querying the local database of the intelligent integrated version management device, the version identification of all published versions of the item can be obtained and it is known whether all published versions of the item are stable versions.
After parsing to obtain the version identification, the intelligent integrated version management device queries the local database to determine whether version identifications of all versions of the item (which may be determined according to item information) stored in the local database (i.e., all published versions of the item) include version identifications in the publishing command.
If the version identifiers of all the versions of the item stored in the local database do not comprise the version identifiers in the issuing command, namely, the version corresponding to the version identifier in the issuing command is not issued, the intelligent integrated version management device further inquires whether the version corresponding to the version identifier in the issuing command exists in the Git server; if the version identification exists, determining the version corresponding to the version identification in the issuing command as the latest version of the item; if not, the intelligent integrated version management device can feed back a message indicating the error of the version identification to the user through the interactive interface, and the user can resend the issuing command. The path of the item in the Git server is preconfigured in the local database of the intelligent integrated version management device, such as the item Git path shown in fig. 3, and the intelligent integrated version management device can query whether a version corresponding to the version identifier in the issuing command exists in the Git server through the path.
If the version identifications of all versions of the item stored in the local database include the version identifications in the issue command, i.e., the version corresponding to the version identifications in the issue command has been issued, the intelligent integrated version management device may feed back a message indicating that the version has been issued to the user via the interactive interface, and the user may then resend the issue command.
After the completion of step S112, step S113 is skipped.
Step S113, acquiring a last created version of the project according to project information by the intelligent integrated version management equipment, and determining whether the last created version is the latest version of the project.
The intelligent integrated version management device obtains the version identifier of the last created version of the item according to the path of the item in the Git server (for example, the version identifier may be used to determine which version of the item is the last created version, and generally, the version corresponding to the largest version identifier is the last created version). Then, the intelligent integrated version management equipment queries a local database and judges whether version identifiers of all versions of the item stored in the local database comprise the version identifier of the last created version or not; if not, i.e. the last created version of the item has not been released, the last created version is determined to be the latest version of the item, and if so, the intelligent integrated version management device may feed back a message to the user via the interactive interface indicating that the item has not been released.
Step S12, after the latest version of the item is determined, the code of the latest version of the item is pulled from the Git server, and the latest version of the item is released to the Web server.
After determining the latest version of the item, the intelligent integrated version management device determines that the version corresponding to the version identifier in the issuing command is the latest version of the item or determines that the last created version of the item in the Git server is the latest version of the item, and pulls the code of the latest version from the Git server. According to one embodiment of the invention, the intelligent integrated version management device may use jGit (jGit is a pure Java library for operating Git) to obtain the latest version of code for an item, and Table 1 shows core objects that may be used by the intelligent integrated version management device:
TABLE 1
The intelligent integrated version management device publishes the latest version of the item to the Web server after pulling the code of the latest version of the item. The intelligent integrated version management equipment can realize automatic release of the project through a CodePipeline.
And S13, after the latest version of the item is released, locally recording version information and state information corresponding to the latest version of the item.
Specifically, after the intelligent integrated version management device issues the latest version of the project, a version identifier corresponding to the latest version and state information corresponding to the latest version are added in a local database. The state information is used to indicate whether the corresponding version is a stable version, and as described above, the state information may be represented by 0 or 1, where 1 indicates that the version corresponding to the state information is a stable version, and 0 indicates that the version corresponding to the state information is a failed version. According to one embodiment of the invention, if the latest version of the item is successfully released, the intelligent integrated version management device sets the state information corresponding to the latest version of the item to 1 and stores the state information in the local database; if the latest version of the item fails to be released, the intelligent integrated version management device sets state information corresponding to the latest version of the item to 0 and stores the state information in the local database. Describing a specific example, after the latest version of the item is released, setting, by the intelligent integrated version management device, state information corresponding to the latest version of the item to 1 and storing the state information in the local database, wherein the state of 1 (i.e., indicating that the corresponding latest version is a stable version) is a default value of the state information; and once the intelligent integrated version management equipment receives a rollback command of a user on the project, updating the state information of the latest version of the project to 0, namely indicating that the corresponding latest version is a failed version and needing rollback.
Step S14, responding to receiving a user rollback command to the project, determining a rollback version of the project based on the locally recorded version information and the state information, and performing rollback operation according to the rollback version of the project.
After the latest version of the item is released, various problems may occur, resulting in the need for rollback operations. A user (e.g., an operation and maintenance person or other employee) may send a rollback command for the project to the intelligent integrated version management device via the interactive interface. The user may specify the version to which rollback is desired, e.g., may include item information (such as item identification or item name) and a version identification of the version to which rollback is desired in the rollback command; the user may also not specify a version, for example by merely clicking on a key associated with item rollback at his terminal, such as a PC terminal or a mobile device terminal, to send a rollback command for an item, wherein different items correspond to different keys.
The intelligent integrated version management device determines a rollback version of the item after receiving a rollback command of the user for the item, the process comprising the sub-steps of:
s141, analyzing the received rollback command by the intelligent integrated version management equipment, and executing a step S142 if version identification and project information are obtained through analysis; if the item information is obtained by parsing but the version identification is not obtained, step S143 is executed.
Step S142, the intelligent integrated version management equipment determines whether the version corresponding to the version identifier in the rollback command is a rollback version of the item.
After parsing to obtain the version identification, the intelligent integrated version management device queries the local database to determine whether version identifications of all versions of the item (which may be determined according to item information) stored in the local database (i.e., all published versions of the item) include version identifications in the rollback command.
If the version identifiers of all the versions of the item stored in the local database comprise the version identifiers in the rollback command, namely, the version corresponding to the version identifier in the rollback command is issued, the intelligent integrated version management equipment further acquires the state information of the version corresponding to the version identifier in the rollback command stored in the local database; if the acquired state information is 1, namely, the version corresponding to the version identifier in the rollback command is indicated to be a stable version, determining the version corresponding to the version identifier in the rollback command as a rollback version of the item; if the acquired state information is 0, the intelligent integrated version management device may feed back a message indicating that the rollback version is unstable to the user via the interactive interface, which indicates that the user inputs a version identifier of a failed version (unstable version), and the user may then resend the rollback command.
If the version identifications of all versions of the item stored in the local database do not include the version identifications in the issue command, indicating that the user may have entered an erroneous version identification, the intelligent integrated version management device may feed back to the user via the interactive interface a message indicating that the version identification is erroneous, and the user may then resend the rollback command.
After the completion of step S142, step S143 is skipped.
And S143, determining the rollback version of the project by the intelligent integrated version management equipment according to the project information, the locally recorded version identification and the state information.
Specifically, the intelligent integrated version management device obtains version identifiers corresponding to versions with 1 state information in all versions of the item from the local database according to the item information based on the state information stored in the local database, namely, obtains all stable versions of the item. The intelligent integrated version management device selects, as a rollback version of the item, a stable version whose version identifier is smaller than and closest to the version identifier of the latest version of the item (i.e., a stable version that is before and closest to the latest version of the item) among all stable versions of the item based on the version identifiers stored in the local database.
After determining the rollback version of the item, the latest version of the item is uninstalled, and code for the rollback version of the item is pulled from the Git server for release to the Web server.
And S15, acquiring the download address of the latest version of the mobile terminal application from the file server, and transmitting the download address of the latest version of the mobile terminal application to the mobile device.
In addition to publishing web items, according to one embodiment of the invention, the intelligent integrated version management device may also manage the version of the mobile-side application. Specifically, the intelligent integrated version management device may obtain a download address of the latest version of the mobile terminal application from the file server and store the download address in the local database, where a version identifier of the latest version of the mobile terminal application and a corresponding download address are stored. The intelligent integrated version management device can also push the download address of the latest version of the mobile application to the mobile terminal device, and the mobile terminal device can download the installation package/upgrade package of the mobile application according to the download address so as to complete the installation or upgrade of the mobile application.
In the embodiment, the version identification and the state information of the item in the Git server are utilized to determine the latest version and the rollback version of the item, and the latest version of the item can be automatically released and rolled back without manually setting and selecting the version number by a user, so that the problem of high error rate when the version number is manually set and selected is solved, and the efficiency of version release and rollback and the reliability of version management are improved. The user does not need to memorize the history version number of the project, the burden of the user is reduced, the project can be released and returned by one key, the operation of the user is convenient, the manpower maintenance cost is saved, and the threshold of the user is reduced. In addition, the user can still specify the version which the user desires to release or the version which the user desires to fall back to by providing the version identification, so that the flexibility of version management is improved. Because version identification and state information (including both release-successful versions and release-failed versions) of all released versions of the project are stored, the development process of files and catalogs in the project development process can be tracked, and convenience is provided for project developers. The above embodiments actually provide an intensive version management scheme that provides version management of mobile applications in addition to automatic publishing and rollback of Web projects.
In the above embodiment, the context between the versions of the item is determined using the version identification in the Git server, where the version identification of the later created version of the item is greater than the version identification of the previously created version. In another embodiment, the intelligent integrated version management device may generate and store a version number for the published version, with the version number determining a context between versions of the item. In other embodiments, the intelligent integrated version management device may record a deployment time for the published version, with the deployment time being used to determine a context between versions of the project.
Embodiments of the device according to the invention are described below with reference to the accompanying drawings.
Fig. 4 schematically shows a block diagram of an intelligent integrated version management device according to an embodiment of the invention.
Referring to fig. 4, an intelligent integrated version management apparatus 400 according to an embodiment of the present invention includes: a version determination module 401, a publication module 402, a recording module 403, and a rollback module 404.
The version determination module 401 is configured to determine the latest version of the item in response to receiving a user's issue command for the item. Wherein, in the case that the release command of the user to the project does not include version information, the version determination module 401 obtains the version information of the last created version of the project from the Git server; and determining whether version information of the last created version is included in version information of all versions of the locally recorded item, and if not, taking the last created version as the latest version of the item. In the case where version information is included in the issue command of the user to the item, the version determination module 401 determines whether version information in the issue command is included in version information of all versions of the locally recorded item; and in response to determining that version information of all versions of the locally recorded item does not comprise version information in the issuing command, searching whether a version corresponding to the version information in the issuing command exists in the Git server, and if so, taking the version corresponding to the version information in the issuing command as the latest version of the item.
The release module 402 is configured to pull code of the latest version of the item from the Git server after determining the latest version of the item, and release the latest version of the item to the Web server. In one embodiment, the publishing module 402 is further configured to obtain, from the file server, a download address of the latest version of the mobile-side application; and the latest version of the download address of the mobile-side application is sent to the mobile device.
The recording module 403 is configured to record version information and status information corresponding to the latest version of the item locally after the latest version of the item is released; the version information is used for determining the context relation between the corresponding version and other versions of the item, and the state information is used for indicating whether the corresponding version is a stable version or not. Specifically, the recording module 403 is configured to set the state information of the latest version of the item to indicate stability, and save it locally; and in response to receiving a user's rollback command for the item, setting state information for the latest version of the item to indicate failure and saving locally.
The rollback module 404 is configured to determine a rollback version of the item based on the locally recorded version information and the state information in response to receiving a user command to rollback the item, and perform a rollback operation according to the rollback version of the item. Wherein, in case that the user does not include version information in the rollback command to the item, the rollback module 404 obtains all stable versions of the item based on the locally recorded state information; based on the locally recorded version information, a stable version that precedes and is closest to the latest version of the item is selected among all stable versions of the item as a rollback version of the item. In the case where version information is included in the user's rollback command for the item, the rollback module 404 determines whether version information in the rollback command is included in version information of all versions of the locally recorded item; and responding to the fact that version information of all versions of the locally recorded project comprises version information in a rollback command, acquiring state information of a version corresponding to the version information in the rollback command of the local record, and taking the version corresponding to the version information in the rollback command as the rollback version of the project if the acquired state information indicates that the version corresponding to the version information in the rollback command is a stable version.
Since each functional module of the intelligent integrated version management apparatus according to the exemplary embodiment of the present invention corresponds to a step of the exemplary embodiment of the above-mentioned intelligent integrated version management method, for details not disclosed in the embodiment of the apparatus according to the present invention, please refer to the embodiment of the above-mentioned intelligent integrated version management method according to the present invention.
Referring now to FIG. 5, there is illustrated a schematic diagram of a computer system 500 suitable for use in implementing an electronic device of an embodiment of the present invention. The computer system 500 of the electronic device shown in fig. 5 is only an example and should not be construed as limiting the functionality and scope of use of embodiments of the invention.
As shown in fig. 5, the computer system 500 includes a Central Processing Unit (CPU) 501, which can perform various appropriate actions and processes according to a program stored in a Read Only Memory (ROM) 502 or a program loaded from a storage section 508 into a Random Access Memory (RAM) 503. In the RAM 503, various programs and data required for the system operation are also stored. The CPU 501, ROM 502, and RAM 503 are connected to each other through a bus 504. An input/output (I/O) interface 505 is also connected to bus 504.
The following components are connected to the I/O interface 505: an input section 506 including a keyboard, a mouse, and the like; an output portion 507 including a Cathode Ray Tube (CRT), a Liquid Crystal Display (LCD), and the like, and a speaker, and the like; a storage portion 508 including a hard disk and the like; and a communication section 509 including a network interface card such as a LAN card, a modem, or the like. The communication section 509 performs communication processing via a network such as the internet. The drive 510 is also connected to the I/O interface 505 as needed. A removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, a semiconductor memory, or the like is mounted on the drive 510 as needed so that a computer program read therefrom is mounted into the storage section 508 as needed.
In particular, according to embodiments of the present application, the processes described above with reference to flowcharts may be implemented as computer software programs. For example, embodiments of the present application include a computer program product comprising a computer program embodied on a computer readable medium, the computer program comprising program code for performing the method shown in the flowcharts. In such an embodiment, the computer program may be downloaded and installed from a network via the communication portion 509, and/or installed from the removable media 511. The above-described functions defined in the system of the present application are performed when the computer program is executed by a Central Processing Unit (CPU) 501.
The computer readable medium shown in the present application may be a computer readable signal medium or a computer readable storage medium, or any combination of the two. The computer readable storage medium can be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or a combination of any of the foregoing. More specific examples of the computer-readable storage medium may include, but are not limited to: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a Random Access Memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device. In the present application, however, the computer-readable signal medium may include a data signal propagated in baseband or as part of a carrier wave, with the computer-readable program code embodied therein. Such a propagated data signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination of the foregoing. A computer readable signal medium may also be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device. Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to: wireless, wire, fiber optic cable, RF, etc., or any suitable combination of the foregoing.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted that, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams or flowchart illustration, and combinations of blocks in the block diagrams or flowchart illustration, can be implemented by special purpose hardware-based systems which perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The units involved in the embodiments of the present invention may be implemented by software, or may be implemented by hardware, and the described units may also be provided in a processor. Wherein the names of the units do not constitute a limitation of the units themselves in some cases.
As another aspect, the present application also provides a computer-readable medium that may be contained in the electronic device described in the above embodiment; or may exist alone without being incorporated into the electronic device. The computer readable medium carries one or more programs which, when executed by the electronic device, cause the electronic device to implement the intelligent integrated version management method as described in the above embodiments.
For example, the electronic device may implement the method as shown in fig. 1: s11, responding to a command issued by a user to the project, and determining the latest version of the project; s12, after the latest version of the item is determined, pulling codes of the latest version of the item from the Git server, and issuing the latest version of the item to the Web server; s13, after the latest version of the item is released, version information and state information corresponding to the latest version of the item are recorded locally; s14, responding to receiving a user rollback command to the project, determining a rollback version of the project based on the locally recorded version information and the state information, and performing rollback operation according to the rollback version of the project; and S15, acquiring the download address of the latest version of the mobile terminal application from the file server, and transmitting the download address of the latest version of the mobile terminal application to the mobile device.
It should be noted that although in the above detailed description several modules or units of a device for action execution are mentioned, such a division is not mandatory. Indeed, the features and functions of two or more modules or units described above may be embodied in one module or unit in accordance with embodiments of the invention. Conversely, the features and functions of one module or unit described above may be further divided into a plurality of modules or units to be embodied.
From the above description of embodiments, those skilled in the art will readily appreciate that the example embodiments described herein may be implemented in software, or may be implemented in software in combination with the necessary hardware. Thus, the technical solution according to the embodiments of the present invention may be embodied in the form of a software product, which may be stored in a non-volatile storage medium (may be a CD-ROM, a U-disk, a mobile hard disk, etc.) or on a network, and includes several instructions to cause a computing device (may be a personal computer, a server, a touch terminal, or a network device, etc.) to perform the method according to the embodiments of the present invention.
Other embodiments of the application will be apparent to those skilled in the art from consideration of the specification and practice of the application disclosed herein. This application is intended to cover any variations, uses, or adaptations of the application following, in general, the principles of the application and including such departures from the present disclosure as come within known or customary practice within the art to which the application pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the application being indicated by the following claims.
It is to be understood that the application is not limited to the precise arrangements and instrumentalities shown in the drawings, which have been described above, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the application is limited only by the appended claims.

Claims (8)

1. An intelligent integrated version management method, comprising:
in response to receiving an issue command of a user for an item, determining the latest version of the item;
after the latest version of the item is determined, pulling the code of the latest version of the item from the Git server, and releasing the latest version of the item to the Web server;
after the latest version of the item is released, version information and state information corresponding to the latest version of the item are locally recorded, the version information is used for determining the context relation between the corresponding version and other versions of the item, the state information is used for indicating whether the corresponding version is a stable version, wherein the locally recorded version information and state information corresponding to all released versions of the item comprise: setting state information of the latest version of the item to indicate stable, and locally saving; in response to receiving a user's rollback command for the item, setting status information for a latest version of the item to indicate failure and saving locally;
In response to receiving a rollback command of a user for the item, determining a rollback version of the item based on the locally recorded version information and the state information includes selecting a stable version that is before and closest to a latest version of the item among all stable versions of the item based on the locally recorded version information as a rollback version of the item, and performing a rollback operation according to the rollback version of the item.
2. The method of claim 1, wherein the user's rollback command for the item includes version information, and wherein determining the rollback version of the item based on the locally recorded version information and the status information comprises:
determining whether version information in the rollback command is included in version information of all versions of the item recorded locally;
and responding to the fact that version information of all versions of the item of the local record comprises version information in the rollback command, acquiring state information of a version corresponding to the version information in the rollback command of the local record, and taking the version corresponding to the version information in the rollback command as a rollback version of the item if the acquired state information indicates that the version corresponding to the version information in the rollback command is a stable version.
3. The method of claim 1 or 2, wherein determining the latest version of the item in response to receiving a user's issue command for the item comprises:
acquiring version information of a last created version of the item from the Git server;
and determining whether version information of the last created version is included in version information of all versions of the item recorded locally, and if not, taking the last created version as the latest version of the item.
4. The method of claim 1 or 2, wherein the user's command to issue an item includes version information, and wherein determining the latest version of the item in response to receiving the user's command to issue an item includes:
determining whether version information of all versions of the item recorded locally includes version information in the issue command;
and in response to determining that version information of all versions of the locally recorded item does not comprise version information in the issuing command, searching whether a version corresponding to the version information in the issuing command exists in the Git, and if so, taking the version corresponding to the version information in the issuing command as the latest version of the item.
5. The method according to claim 1 or 2, characterized in that the method further comprises:
acquiring a download address of the latest version of the mobile terminal application from a file server;
and sending the download address of the latest version of the mobile terminal application to the mobile device.
6. An intelligent integrated version management device, comprising:
the version determining module is used for determining the latest version of the project in response to receiving an issuing command of a user on the project;
the issuing module is used for pulling codes of the latest version of the project from the Git server after the latest version of the project is determined, and issuing the latest version of the project to the Web server;
the recording module is configured to record, locally, version information and state information corresponding to a latest version of the item after the latest version of the item is released, where the version information is used to determine a context between the corresponding version and other versions of the item, the state information is used to indicate whether the corresponding version is a stable version, where the locally recording, on the recording module, version information and state information corresponding to all released versions of the item, and the locally recording, on the recording module, state information corresponding to the latest version of the item includes: setting state information of the latest version of the item to indicate stable, and locally saving; in response to receiving a user's rollback command for the item, setting status information for a latest version of the item to indicate failure and saving locally;
And the rollback module is used for responding to receiving a rollback command of a user on the project, determining a rollback version of the project based on the locally recorded version information and the state information, selecting a stable version which is before the latest version of the project and is closest to the latest version of the project from all stable versions of the project based on the locally recorded version information, and performing rollback operation according to the rollback version of the project as the rollback version of the project.
7. A computer readable medium, on which a computer program is stored, which computer program, when being executed by a processor, implements the method according to any one of claims 1 to 5.
8. An electronic device, comprising:
one or more processors;
storage means for storing one or more computer programs which, when executed by the one or more processors, cause the electronic device to implement the method of any of claims 1-5.
CN201911130928.0A 2019-11-19 2019-11-19 Intelligent integrated version management method, device, medium and electronic equipment Active CN111104125B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911130928.0A CN111104125B (en) 2019-11-19 2019-11-19 Intelligent integrated version management method, device, medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911130928.0A CN111104125B (en) 2019-11-19 2019-11-19 Intelligent integrated version management method, device, medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN111104125A CN111104125A (en) 2020-05-05
CN111104125B true CN111104125B (en) 2023-09-08

Family

ID=70420603

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911130928.0A Active CN111104125B (en) 2019-11-19 2019-11-19 Intelligent integrated version management method, device, medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN111104125B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113190248A (en) * 2021-04-28 2021-07-30 绿盟科技集团股份有限公司 Virtualization-based web system upgrade test method and server

Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8341590B1 (en) * 2007-12-12 2012-12-25 Accurev, Inc. System for relating workflow status to code component status in a software project
WO2014027479A1 (en) * 2012-08-13 2014-02-20 日本電気株式会社 Management system, and management device as well as management method and management program used therein
CN103761612A (en) * 2014-01-09 2014-04-30 北京奇虎科技有限公司 Project release method and system
US9372686B1 (en) * 2014-12-24 2016-06-21 Google Inc. Maintaining package repositories
CN105897863A (en) * 2016-03-28 2016-08-24 努比亚技术有限公司 Rollback method and apparatus for upgraded mobile terminal version
CN106445488A (en) * 2016-07-01 2017-02-22 厦门易名科技股份有限公司 Code release and backspacing methods
CN106547584A (en) * 2015-09-23 2017-03-29 中国移动通信集团浙江有限公司 A kind of backing method and device of application program
CN107015842A (en) * 2017-03-31 2017-08-04 武汉票据交易中心有限公司 A kind of management method and system of server compiling and issue
CN107506194A (en) * 2017-08-24 2017-12-22 北京百悟科技有限公司 Application version, which retracts, determines method and device
CN107548085A (en) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 Base station edition backing method and system
CN108196878A (en) * 2018-01-22 2018-06-22 广东小天才科技有限公司 Generation method, device, electronic equipment and the storage medium of application program installation kit
CN109144524A (en) * 2018-07-25 2019-01-04 深圳点猫科技有限公司 The version dissemination method and electronic equipment of subject game on a kind of teaching platform
CN110389773A (en) * 2018-04-23 2019-10-29 比亚迪股份有限公司 Software publication and dispositions method, apparatus and system

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020073110A1 (en) * 2000-12-12 2002-06-13 Edouard Duvillier Version collection technique implemented on an intrinsic versioning information storage and retrieval system
US9535688B2 (en) * 2014-07-23 2017-01-03 Verizon Patent And Licensing Inc. Efficient deployment of application revisions and implementation of application rollbacks across multiple application servers
US10503496B2 (en) * 2018-02-02 2019-12-10 Bank Of America Corporation Smart tool for enterprise-wide version control of codes during software integration and deployment

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8341590B1 (en) * 2007-12-12 2012-12-25 Accurev, Inc. System for relating workflow status to code component status in a software project
WO2014027479A1 (en) * 2012-08-13 2014-02-20 日本電気株式会社 Management system, and management device as well as management method and management program used therein
CN103761612A (en) * 2014-01-09 2014-04-30 北京奇虎科技有限公司 Project release method and system
US9372686B1 (en) * 2014-12-24 2016-06-21 Google Inc. Maintaining package repositories
CN106547584A (en) * 2015-09-23 2017-03-29 中国移动通信集团浙江有限公司 A kind of backing method and device of application program
CN105897863A (en) * 2016-03-28 2016-08-24 努比亚技术有限公司 Rollback method and apparatus for upgraded mobile terminal version
CN107548085A (en) * 2016-06-24 2018-01-05 中兴通讯股份有限公司 Base station edition backing method and system
CN106445488A (en) * 2016-07-01 2017-02-22 厦门易名科技股份有限公司 Code release and backspacing methods
CN107015842A (en) * 2017-03-31 2017-08-04 武汉票据交易中心有限公司 A kind of management method and system of server compiling and issue
CN107506194A (en) * 2017-08-24 2017-12-22 北京百悟科技有限公司 Application version, which retracts, determines method and device
CN108196878A (en) * 2018-01-22 2018-06-22 广东小天才科技有限公司 Generation method, device, electronic equipment and the storage medium of application program installation kit
CN110389773A (en) * 2018-04-23 2019-10-29 比亚迪股份有限公司 Software publication and dispositions method, apparatus and system
CN109144524A (en) * 2018-07-25 2019-01-04 深圳点猫科技有限公司 The version dissemination method and electronic equipment of subject game on a kind of teaching platform

Also Published As

Publication number Publication date
CN111104125A (en) 2020-05-05

Similar Documents

Publication Publication Date Title
CN108874558B (en) Message subscription method of distributed transaction, electronic device and readable storage medium
CN111339186B (en) Workflow engine data synchronization method, device, medium and electronic equipment
US9092230B2 (en) Configuration of componentized software applications
CN111190888A (en) Method and device for managing graph database cluster
CN104572069A (en) Real-time, distributed administration of information describing dependency relationships among configuration items in a data center
CN111038906A (en) Order sorting method and device
CN112148711A (en) Processing method and device for batch processing tasks
CN104881454A (en) Updating method and system of parameter
CN111782235A (en) Data upgrading and querying method and device
CN110716804A (en) Method and device for automatically deleting useless resources, storage medium and electronic equipment
CN111104125B (en) Intelligent integrated version management method, device, medium and electronic equipment
CN113014618B (en) Message processing method and system and electronic equipment
CN112596956B (en) File system management method, device and related components
CN113377342B (en) Project construction method and device, electronic equipment and storage medium
CN115982148A (en) Database table processing method and device, electronic equipment and storage medium
CN111212112A (en) Information processing method and device
CN116048987A (en) Processing method, device, electronic equipment, system and storage medium for flow business
CN106933449B (en) Icon processing method and device
CN113329091B (en) Data management method and device, storage medium and electronic equipment
CN110806967A (en) Unit testing method and device
CN113821249A (en) Project development configuration method and device, electronic equipment and readable storage medium
CN113742321A (en) Data updating method and device
CN113076343A (en) Data query method, device, equipment and storage medium
CN111104409A (en) Database processing method and device, storage medium and electronic equipment
CN113760600A (en) Database backup method, database restoration method and related device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant