CN113050986A - Object management method and device - Google Patents

Object management method and device Download PDF

Info

Publication number
CN113050986A
CN113050986A CN202110435160.9A CN202110435160A CN113050986A CN 113050986 A CN113050986 A CN 113050986A CN 202110435160 A CN202110435160 A CN 202110435160A CN 113050986 A CN113050986 A CN 113050986A
Authority
CN
China
Prior art keywords
project
sub
target
item
modification
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.)
Pending
Application number
CN202110435160.9A
Other languages
Chinese (zh)
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.)
Shanghai Bilibili Technology Co Ltd
Original Assignee
Shanghai Bilibili Technology 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 Shanghai Bilibili Technology Co Ltd filed Critical Shanghai Bilibili Technology Co Ltd
Priority to CN202110435160.9A priority Critical patent/CN113050986A/en
Publication of CN113050986A publication Critical patent/CN113050986A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The application provides an object management method and device, wherein the object management method comprises the following steps: receiving a merging request aiming at project sub-objects, and determining object management information determined by a user on an object management platform in response to the merging request; merging the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object, wherein the project sub-object is migrated from the initial project object.

Description

Object management method and device
Technical Field
The present application relates to the field of computer technologies, and in particular, to an object management method. The application also relates to an object management apparatus, a computing device, and a computer-readable storage medium.
Background
With the development of the internet, the updating requirements for projects are more and more complex and more frequent, so that a plurality of updating functions can be online together when one project is online, different updating functions correspond to different code branches, and when the project is online, a plurality of code branches need to be combined to be online, and currently, the condition of code branch omission occurs when the code branches are manually combined, and the labor cost is consumed for version control.
Disclosure of Invention
In view of this, an embodiment of the present application provides an object management method. The application also relates to an object management device, a computing device and a computer readable storage medium, which are used for solving the defects of missing code branches and large labor cost consumption for version control in the process of merging the code branches in the prior art.
According to a first aspect of embodiments of the present application, there is provided an object management method, including:
receiving a merging request aiming at project sub-objects, and determining object management information determined by a user on an object management platform in response to the merging request;
merging the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object, wherein the project sub-object is migrated from the initial project object.
According to a second aspect of embodiments of the present application, there is provided an object management apparatus, including:
the receiving module is configured to receive a merging request aiming at the project sub-objects, and determine the object management information determined by a user in the object management platform in response to the merging request;
and the merging module is configured to merge the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object, wherein the project sub-object is migrated from the initial project object.
According to a third aspect of embodiments herein, there is provided a computing device comprising a memory, a processor and computer instructions stored on the memory and executable on the processor, the processor implementing the steps of the object management method when executing the computer instructions.
According to a fourth aspect of embodiments herein, there is provided a computer readable storage medium storing computer instructions which, when executed by a processor, implement the steps of the object management method.
The object management method comprises the steps that a merging request aiming at project sub-objects is received, and object management information determined by a user on an object management platform is determined in response to the merging request; merging the project sub-objects corresponding to the object management information and the initial project objects associated with the project sub-objects to generate target project objects, wherein the project sub-objects are migrated from the initial project objects, so that merging processing of the project sub-objects based on operation of a user on an object management platform is realized, that is, the objects are merged, controlled and managed through the object management platform, automation of object merging is realized, labor consumption is avoided for object merging, and object omission possibly occurring in a merging process is avoided.
Drawings
Fig. 1 is a flowchart of an object management method according to an embodiment of the present application;
fig. 2 is a schematic interface diagram of branch management in an object management method according to an embodiment of the present application;
fig. 3 is a schematic diagram illustrating branch elimination in an object management method according to an embodiment of the present application;
fig. 4 is a schematic diagram illustrating entry branch migration in and exit in an object management method according to an embodiment of the present application;
FIG. 5 is a flowchart illustrating an object management method applied to a development project according to an embodiment of the present application;
fig. 6 is a schematic structural diagram of an object management apparatus according to an embodiment of the present application;
fig. 7 is a block diagram of a computing device according to an embodiment of the present application.
Detailed Description
In the following description, numerous specific details are set forth in order to provide a thorough understanding of the present application. This application is capable of implementation in many different ways than those herein set forth and of similar import by those skilled in the art without departing from the spirit of this application and is therefore not limited to the specific implementations disclosed below.
The terminology used in the one or more embodiments of the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the one or more embodiments of the present application. As used in one or more embodiments of the present application and the appended claims, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It should also be understood that the term "and/or" as used in one or more embodiments of the present application refers to and encompasses any and all possible combinations of one or more of the associated listed items.
It will be understood that, although the terms first, second, etc. may be used herein in one or more embodiments of the present application to describe various information, these information should not be limited by these terms. These terms are only used to distinguish one type of information from another. For example, a first aspect may be termed a second aspect, and, similarly, a second aspect may be termed a first aspect, without departing from the scope of one or more embodiments of the present application. The word "if" as used herein may be interpreted as "at … …" or "when … …" or "in response to a determination", depending on the context.
First, the noun terms to which one or more embodiments of the present application relate are explained.
GIT warehouse: and the code warehouse can be submitted to according to different branches.
Branching: in terms of the GIT, when new requirements are developed, a new branch needs to be cut from an original main branch for development, and different branches correspond to different code functions.
Branch merging: different demand codes correspond to a plurality of branches, and codes of the branches need to be merged and issued.
And (3) release: the code of a certain branch is issued to the online environment.
In the present application, an object management method is provided, and the present application relates to an object management apparatus, a computing device, and a computer-readable storage medium, which are described in detail in the following embodiments one by one.
Fig. 1 shows a flowchart of an object management method according to an embodiment of the present application, which specifically includes the following steps:
step 102: and receiving a merging request aiming at the project sub-objects, and determining the object management information determined by the user in the object management platform in response to the merging request.
Specifically, the project sub-object may be understood as a sub-project, a project branch, and the like of a project, where the project may be an engineering project, a development project, and the like, and is not limited herein; the project branch may be understood as a development branch in a development project (i.e., a functional branch corresponding to a certain function developed in the project).
In practical applications, in order to facilitate project processing or project management, at least one project sub-object is generally split or extracted from an initial project object, so as to perform management, progress advancing or modification on each project sub-object, and after the project sub-objects are processed separately, in order to guarantee the integrity of a project, the project sub-objects need to be merged with the initial project object, so that a merge request for the project sub-objects can be submitted on an object management platform, and after the merge request for the project sub-objects is received, object management information determined by a user on the object management platform is determined.
In specific implementation, the object management information may be understood as merging information for the project sub-objects, such as: the information such as the name of the item, the storage location of the item, the name of the item sub-object, and the storage location of the item sub-object is not limited herein.
Optionally, the item sub-object includes: item branching; correspondingly, the object management platform comprises: a branch management platform, the project object comprising: a project principal branch, the target project object, comprising: and issuing branches.
In practical application, in order to facilitate a user to merge project sub-objects, an object management platform is provided for the user to manage the sub-objects in the project on the object management platform, further, when the object is a branch, the object management platform is a branch management platform, and specifically, an operation interface of the branch management platform may be as shown in fig. 2.
In specific implementation, a user may perform branch management on a branch in a project in the branch management platform, specifically, through components in an operation interface of the branch management platform as shown in fig. 2: branch management is carried out on project branches by regular bus dates, projects, GITs, selection branches, branch union sets, updating controls and the like, wherein the regular bus dates are used for selecting the release dates of the branches (for example, 2021-01-12); items, which are used for selecting the branch management in which item, that is, for selecting the item to be published (for example: response); the GIT can be understood as the GIT warehouse address of the selected project (such as GIT @ GIT. co: business/issue. GIT), and in the specific implementation, the platform can automatically acquire the GIT warehouse address of the project according to the selected project; selecting branches (branch1/branch2/branch3) to be merged, selecting a branch in a branch list, adding the branch to a branch merging set, and enabling a check box corresponding to each selected branch to be in a checked state; a branch union set used for showing the branches selected in the selection branches (such as master branch, feature/20201230-dynamic-reactive.zc, feature/2020-12-27/trust _ ad, feature/202010107-log-agent.zc, feature/2021-01-11/store _ refresh _ configure), and in addition, the selection of the branch can be cancelled through a check box corresponding to the branch selected in the branch union set; the updating control is used for carrying out branch combination according to the selected branch in the branch combination set when clicking, and the platform can automatically generate a release branch (such as release/2021-01-12/v1) according to the release date; the data in the branch merged set after updating is consistent with the characteristic branch in the list.
In practical applications, the list may further include a total number of commit lines (within 30 days) for each branch, a state (e.g., a merge state), a test state, and the like, for example, the total number of commit lines for a master branch is 2632, the total number of commit lines for a feature/20201230-dynamic-reactive.z is 3019, the state is SUCCESS, the test state is test completion, the total number of commit lines for a feature/2020-12-27/trust _ ad is 3023, the state is SUCCESS, the test state is test completion, the total number of commit lines for a feature/202010107-log-agent.zc is 2425, the state is SUCCESS, the test state is test completion, the total number of commit lines for a feature/2021-01-11/store _ refresh _ con is 2633, the state is SUCCESS, and the test state is test completion. In addition, the list may also include operation controls (e.g., update control, synchronization master control, etc.) for the item (application).
In practical application, on a branch management platform, according to the release time, only the item and the code branch needing to be online are selected, the branches are automatically merged, version constraints exist during merging, and if a certain requirement is not online. The branch list of the platform is only required to be removed from the branch list and then regenerated. At this time, the version number is updated, and the branch of the new version is used for directly releasing the online.
Step 104: and merging the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object.
In practical applications, at least one item sub-object is split or extracted from the initial item object, and after the item sub-objects are respectively processed, in order to ensure the integrity of the item, the item sub-objects and the initial item object are merged and merged into an updated item object, i.e., a target item object.
In specific implementation, in order to ensure the integrity of a project object and the security of an initial project object, in an optional implementation manner provided in this embodiment of the present application, the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object are merged to generate a target project object, which is specifically implemented in the following manner:
creating a target folder based on the merge request;
extracting an item sub-object corresponding to the object management information and an initial item object associated with the item sub-object from an item object library;
and storing the initial project object and the project sub-objects to the target folder in a merging mode to generate a target project object.
The project object library may be understood as a server/database/folder or the like storing an initial project object and project sub-objects, and is not limited herein, and in specific implementation, the corresponding project sub-objects may be extracted from the project object library according to storage locations of the project sub-objects in the project management information, or the storage locations of the initial project object may be found according to project names in the initial project object in the project management information, and then the corresponding initial project object may be extracted from the storage locations.
In practical applications, in the process of merging the project sub-object with the initial project object, in order not to affect the initial state or the use state of the initial project object, a new folder (i.e. a target folder) may be created for merging the project sub-object and the initial project object.
In specific implementation, the specific implementation of the merging may be: and copying and pasting the files contained in the initial project object and the files contained in the project sub-objects to the target folder, and forming the target project object by the target folder and the project files in the target folder after the pasting is finished.
Further, since there may be one or more project sub-objects, in an optional implementation manner provided by the embodiment of the present application, there are a plurality of project sub-objects;
correspondingly, the initial project object and the project sub-objects are stored in the target folder in a merged manner to generate a target project object, which is specifically implemented in the following manner:
determining a target object file with two or more target project sub-objects modified for the same object file according to the object file corresponding to each project sub-object;
calculating the modification position of each target project sub-object aiming at the target object file by respectively comparing each target object file with the corresponding object file in the initial project object;
under the condition that the modification positions are not overlapped, merging the contents of the target object files;
and storing the initial project object and the project sub-objects to the target folder in a merging mode based on the merged target object file so as to generate a target project object.
In practical applications, there may be a case where different project sub-objects modify the same object file (target object file), in this case, it is necessary to count the modification position of each target project sub-object on the target object file by comparing these target object files with the corresponding object files in the initial project object, so as to determine whether there is a conflict between the modification of the target project sub-object on the target object file based on the counted positions.
In specific implementation, after counting modification positions of the target object files relative to corresponding object files in the project objects, comparing the modification positions of each target project sub-object relative to the target object files, so as to determine whether each modification position is overlapped, if not, indicating that there is no conflict for modification of the target object files, merging at least two target object files into one target object file based on the modification positions, and merging the target object file with the initial project object on the basis to generate the target project object; if the target object files are overlapped, the conflict exists in the modification of the target object files, and then merging processing needs to be carried out on the basis of solving the conflict.
Specifically, based on the merged object file, the initial item object and the item sub-objects are stored in the object folder in a merged manner to generate the object item object, where the files included in the initial item object are copied and pasted to the object folder, then the files included in the item sub-objects except the object file are copied and pasted to the object folder, and then the merged object file is copied and pasted to the object folder to replace the corresponding object file in the initial item object, thereby generating the object item object.
It should be noted that, in the case that it is determined that the modification positions do not coincide with each other, there may also be a conflict of actual modification information, and in order to avoid such a conflict, a prompt may be provided for the modification positions, so that after it is determined that there is no conflict of modification information corresponding to the modification positions, merging processing is performed.
Taking a project as an example of a development project, an initial project object is a master branch, two project branches migrated from the master branch are branch1 and branch2, respectively, if both project branches modify the same code file (target object file), it can be counted that the data content of the line number in the code file has a change, if the branch1 modifies the 5 th-10 th lines of the code file code1, the branch2 modifies the 15 th-25 th lines of the code file code1, and there is no overlap between the two, then the code files in the branch1 and the branch2 can be merged, and then the code files in the master branch, the branch1 and the branch2 except the code files are copied to a newly created target folder, so as to generate a release branch.
Further, there is also a case that there is a coincidence position in the modification position, and in an optional implementation manner provided by the embodiment of the present application, after counting the modification position of each target item sub-object with respect to the target object file, the method further includes:
when the modification position has a coincidence position, prompting aiming at the modification position and the coincidence position; or the like, or, alternatively,
determining, in the event that there is a coincident position at the modification location, modification times for the two or more target item sub-objects for the coincident position,
and determining modification information aiming at the superposition position according to the modification time, and merging the content of the target object file based on the modification information.
In practical application, when two or more target project sub-objects modify the same object file and modification information has a coincidence position at a modification position corresponding to an object file corresponding to an initial project object, it is indicated that the two or more project sub-objects have a conflict in modification.
Along the above example, if the branch1 modifies the 5 th-20 th lines of the code1 of the code file, the branch2 modifies the 10 th-25 th lines of the code1 of the code file, and the two modification positions overlap, that is, the modification position and the overlapping position of the two modification positions are further determined to be the 10 th-20 th lines, which also indicates that a code conflict exists between the branch1 and the branch2, the modification position and the overlapping position of the code file can be prompted for the branch1 and the branch2, so that based on the prompts, the data of which code lines in the code file are used as the reference can be quickly determined, so that the conflicting content can be removed, and then merging processing can be performed.
In addition, when there is an overlap position in the modification position, the modification time of the two or more target item sub-objects for the overlap position may be determined, and in practical applications, the modification time for the overlap position may be determined according to the modification time stamp corresponding to the target object file in each target item sub-object, or the modification position and the modification time for each modification of the object file may be recorded in advance, and the modification time for the overlap position may be determined according to the recorded modification position and the recorded modification time.
Further, after the modification time is determined, modification information for the overlapping position may be determined according to the modification time, specifically, modification information for the overlapping position of the target item sub-object after the modification time may be used, or modification information for the overlapping position of the target item sub-object before the modification time may be used, in practical application, a selection condition for the modification time may be preset (for example, the modification information after the modification time is selected), and then the corresponding modification information is selected according to the selection condition. And merging the contents of the target object files on the basis of determining the modification information, and storing the initial project object and the project sub-objects to the target folder in a merging manner on the basis of the merged target object files to generate target project objects,
for example, the modification time of the branch1 on the 5 th-20 th lines of the code file code1 is 2020/2/15 days, the modification time of the branch2 on the 10 th-25 th lines of the code file code1 is 2020/3/15 days, wherein the modification time of the branch2 on the code file code1 is late, and the preset selection condition is that the modification information with the later modification time is selected, the modification information of the branch2 on the code file code1 is selected for the 10 th-20 th lines of the superposition position, the modification information of the branch1 is selected for the 5 th-9 th lines of the code file code1, and the modification information of the branch2 is selected for the 21 th-25 th lines of the code file code1, so that the content of the code file code1 is merged.
In addition, modification information of the coincidence position can be determined according to the priority of the target item sub-object, the amount of modified content and the like.
Further, after merging the project sub-objects, in an optional implementation manner provided by the embodiment of the present application, after generating the target project object, the method further includes:
receiving an object removing instruction aiming at an item sub-object in the target item object, wherein the item removing instruction carries object information;
removing the corresponding first item sub-object from the target item object based on the object information.
In practical applications, after the target project object is generated by merging, the target project object or the project sub-objects in the target project object may need to be tested, so as to guarantee the stability of the target project object, and if one of the project sub-objects is found to have a problem, the project sub-object needs to be removed from the target project object, so as to avoid affecting the accuracy of the target project object.
In specific implementation, after determining which item sub-object needs to be removed, an object removal instruction for the item sub-object (first item sub-object) may be issued, where the item removal instruction specifies the item sub-object to be removed, that is, the first item sub-object, through object information, and specifically, the object information may include information that can determine the first target sub-object, such as an object name, an object identifier, and a storage address of the item sub-object to be removed.
Further, after the first item sub-object is determined, the manner of removing the first item sub-object from the target item object is various, for example, the object file corresponding to the first item sub-object in the target item object may be determined first, then the object file corresponding to the first item sub-object may be deleted from the target item object, the object file corresponding to the deleted object file in the initial item object may be determined, and the corresponding object file may be copied and pasted to the target item object.
In addition, in order to further ensure the security of the removing process, in an optional implementation manner provided by the embodiment of the present application, the removing the corresponding first item sub-object from the target item object based on the object information is specifically implemented in the following manner:
determining a first item sub-object corresponding to the object information based on the object information;
determining a second item sub-object except the first item sub-object in the item sub-objects corresponding to the object management information;
and merging the second project sub-object and the initial project object to generate a second target project object, and taking the second target project object as the target project object.
In practical applications, because there may be a trade-off on object files included in the item sub-objects in the process of generating the target item object by merging, in order to avoid that other object files are removed by mistake in the removal process, or that a file corresponding to a deleted object file is not supplemented after an object file included in the first item sub-object is removed, and the integrity of the target item object is affected, in the embodiment of the present application, after the first item sub-object to be removed is determined, an item sub-object (i.e., a second item sub-object) other than the first item sub-object in the item sub-object corresponding to the object management information and the initial item object are merged again to generate a second target item object, and the second target item object is used as the target item object.
Specifically, as shown in fig. 3, taking a project as an application, and taking a project sub-object including a branch1, a branch2 and a branch3 as an example, where a branch path (storage location) corresponding to the branch1 is feature/2021-01-02/11, a branch path corresponding to the branch2 is feature/2021-01-02/12, and a branch path corresponding to the branch3 is feature/2021-01-02/13, the 3 branches and a main branch corresponding to the application are branch-merged to generate a distribution branch, the branch path corresponding to the distribution branch is feature/1-01-02/v 1, and when a code bug (bug) occurs in the branch3 after the distribution branch is brought on line, the branch3 is deleted (removed) as a problem branch, and the branch1 and the branch2 are branch-merged again, generating a release branch, wherein a branch path corresponding to the release branch is as follows: feature/2021-01-02/v 2.
Further, after the test is completed on the target project object or the project sub-object in the target project object, in order to further ensure the stability of the target project object, in an optional implementation manner provided by the embodiment of the present application, after the generating the target project object, the method further includes:
receiving a test completion instruction aiming at any project sub-object in the target project object;
and locking any item child object based on the test completion instruction.
The test completion instruction may be submitted by a user through the object management platform, and is not limited herein, and in specific implementation, based on test object information (which may be understood as object information for a test) carried in the test completion instruction, an item sub-object corresponding to the test object information may be determined, and the determined item sub-object is further locked.
In specific implementation, after the test is completed, the project sub-object after the test is completed is locked, so that the target project object is prevented from being modified as much as possible, and the stability and the safety of the target project object are guaranteed.
It should be noted that, a test completion request may also be directly submitted for the target project object, and in the specific implementation, the target project object is locked based on the test completion request, which is similar to the specific implementation of the project sub-object locking based on the test completion request, and reference may be made to the specific implementation of the project sub-object locking based on the test completion request, which is not limited herein.
Still further, in an optional implementation manner provided by the embodiment of the present application, after the locking the any item child object based on the test completion instruction, the method further includes:
under the condition that a modification request aiming at any project sub-object is received, sending the modification request to a target project party corresponding to the project sub-object for approval;
and in the case of approval, modifying any project sub-object based on the modification request.
In practical application, after the test for any item sub-object is completed, if it is found that there is still content that needs to be modified, a modification request for any item sub-object may be submitted, where the modification request may carry information such as a modification reason, a modification content, and a modified object file name, and is not limited herein.
Further, after receiving the modification request, sending the modification request to a target project party authorized to approve the modification request for approval, and modifying any project sub-object in the target project object based on the modification request under the condition that the approval is passed, and in the specific implementation, modifying any project sub-object based on the modification request in various ways, for example, a modified object file corresponding to the modification request may be determined based on the modification request, and the modified object file is merged to any project sub-object, and in addition, a modification right item for the modification request in any project sub-object may be opened, and a file in a project sub-object in the target project object may be directly modified, and the like, without limitation.
It should be noted that, the modification request may also be directly submitted for the target item object, and in the specific implementation, the modification for the target item object is similar to the modification for the item sub-object, and reference may be made to the modification for the item sub-object, which is not limited herein.
In practical applications, since some problems may occur during the release process, which are not found during testing, the project control object of the target project object may be determined according to the modifier, so that the project control object performs on the project, and in an optional implementation manner provided in an embodiment of the present application, after the target project object is generated, the method further includes:
counting the modification line number aiming at each project sub-object;
determining an item control object of the target item object based on the modified line number.
The project control object may be understood as a responsible object for managing, such as merging or publishing, a target project object.
In practical application, the number of modification lines for an item sub-object may be 30 lines, may also be 200 lines, and the like, which is not limited herein; the larger the number of modification lines is, the larger the modification amount for the target sub-object is, and accordingly, the larger the modification amount is, the larger the probability of modification error is, so that, based on the number of modification lines, the item sub-object with the largest number of modification lines among the plurality of item sub-objects can be determined as the item control object, so as to more quickly locate the possible problems in the item sub-objects.
In addition, the modifier corresponding to the item sub-object with the largest number of modification lines may also be determined as the item control object, which is not limited herein.
Further, in an optional implementation manner provided by the embodiment of the present application, after the generating the target item object, the method further includes:
issuing the target project object according to the time information in the object management information;
and merging the target project object to the initial project object under the condition of successful publishing.
In practical applications, after the target project object is generated, the target project object may be published online according to the publishing time (i.e. time information) for the target project object in the object management information, and if the publishing is successful, the target project object may be merged to the initial project object in order to avoid that the initial project object lacks updated content for the target project object.
Specifically, as shown in fig. 4, taking a project as an example of a development project, an initial project object is a master branch, all branches are migrated from the master branch, and branch1 is migrated from the master branch (for developing function 1); branch2 branch (for development function 2) … …; and so on. After the development of each function is completed, the branches need to be merged and placed on the line (which is equivalent to the function corresponding to each branch of the online version set), the branches 1, 2 and 3 can be merged based on the above operation interface, the new version (Release branch) after Release is Release/2021-01-12/v1, the new version (Release branch) is migrated back to the master main branch after the Release branch is released, the integrity of the function is ensured, the subsequent development of the function needs to be migrated again on the master main branch, and the Release branch is merged into the master main branch after the completion of the placement (Release).
In summary, the object management method provided by the present application, by receiving a merge request for a project sub-object, determines, in response to the merge request, object management information determined by a user on an object management platform; merging the project sub-objects corresponding to the object management information and the initial project objects associated with the project sub-objects to generate target project objects, wherein the project sub-objects are migrated from the initial project objects, so that merging processing of the project sub-objects based on operation of a user on an object management platform is realized, that is, the objects are merged, controlled and managed through the object management platform, automation of object merging is realized, labor consumption is avoided for object merging, and object omission possibly occurring in a merging process is avoided.
The object management method provided by the present application is further described below with reference to fig. 5, taking an application of the object management method in a development project as an example. Fig. 5 shows a processing flow chart of an object management method applied to a development project according to an embodiment of the present application, which specifically includes the following steps:
step 502: receiving a merging request aiming at project branches, and determining branch management information determined by a user at a branch management platform in response to the merging request.
Step 504: and creating a target folder based on the merging request.
Step 506: and extracting the project branch corresponding to the branch management information and the project main branch related to the project branch from a project warehouse.
Step 508: and under the condition that the project branches are multiple, determining a target branch file of which the two or more target project branches have modification on the same branch file according to the branch file corresponding to each project branch.
Step 510: and respectively comparing each target branch file with the corresponding branch file in the project main branch, and counting the modification position of each target project branch aiming at the target branch file.
Step 512: and under the condition that the modification positions are not overlapped, performing content merging on the target branch file.
Step 514: and storing the project main branch and the project branch to the target folder in a merging mode based on the merged target branch file so as to generate a publishing branch.
Step 516: receiving a branch removal instruction aiming at an item branch in the issue branch, wherein the branch removal instruction carries branch information.
Step 518: and determining a first item branch corresponding to the branch information based on the branch information.
Step 520: and determining a second item branch except the first item branch in the item branches corresponding to the branch management information.
Step 522: merging the second project branch and the project main branch to generate a second issuing branch, and taking the second issuing branch as the issuing branch.
Step 524: and issuing the issuing branch according to the issuing time information in the branch management information.
Step 526: and merging the publishing branch to the project main branch under the condition that the publishing is successful.
In summary, the object management method provided by the present application, by receiving a merge request for a project branch, determines branch management information determined by a user on a branch management platform in response to the merge request; and merging the project branches corresponding to the branch management information and the project main branches associated with the project branches to generate release branches, so that merging processing of the project branches is realized based on operation of a user on a branch management platform, namely, control and management of branch merging are realized through the branch management platform, automation of branch merging is realized, labor consumption is avoided for branch merging, and branch omission possibly occurring in a merging process is avoided.
Corresponding to the above method embodiment, the present application further provides an embodiment of an object management apparatus, and fig. 6 shows a schematic structural diagram of an object management apparatus provided in an embodiment of the present application. As shown in fig. 6, the apparatus includes:
a receiving module 602 configured to receive a merge request for the project sub-objects, and determine, in response to the merge request, object management information determined by a user at an object management platform;
a merging module 604, configured to merge an item sub-object corresponding to the object management information and an initial item object associated with the item sub-object to generate a target item object, where the item sub-object is migrated from the initial item object.
Optionally, the merging module 604 includes:
a creation sub-module configured to create a target folder based on the merge request;
the extraction sub-module is configured to extract an item sub-object corresponding to the object management information and an initial item object associated with the item sub-object from an item object library;
a merge sub-module configured to store the initial project object and the project sub-object in a merged manner to the target folder to generate a target project object.
Optionally, the object management apparatus further includes:
the issuing module is configured to issue the target project object according to the time information in the object management information;
a second merging module configured to merge the target project object to the initial project object if the publishing is successful.
Optionally, the item sub-objects are multiple;
accordingly, the merge sub-module is further configured to:
determining a target object file with two or more target project sub-objects modified for the same object file according to the object file corresponding to each project sub-object;
calculating the modification position of each target project sub-object aiming at the target object file by respectively comparing each target object file with the corresponding object file in the initial project object;
under the condition that the modification positions are not overlapped, merging the contents of the target object files;
and storing the initial project object and the project sub-objects to the target folder in a merging mode based on the merged target object file so as to generate a target project object.
Optionally, the merging sub-module is further configured to:
when the modification position has a coincidence position, prompting aiming at the modification position and the coincidence position; or the like, or, alternatively,
determining, in the event that there is a coincident position at the modification location, modification times for the two or more target item sub-objects for the coincident position,
and determining modification information aiming at the superposition position according to the modification time, and merging the contents of the target object file based on the modification information.
Optionally, the object management apparatus further includes:
a first instruction receiving module configured to receive an object removal instruction for an item sub-object in the target item object, where the item removal instruction carries object information;
a removal module configured to remove the corresponding first item sub-object from the target item object based on the object information.
Optionally, the removing module is further configured to:
determining a first item sub-object corresponding to the object information based on the object information;
determining a second item sub-object except the first item sub-object in the item sub-objects corresponding to the object management information;
and merging the second project sub-object and the initial project object to generate a second target project object, and taking the second target project object as the target project object.
Optionally, the object management apparatus further includes:
a second instruction receiving module configured to receive a test completion instruction for any project sub-object in the target project object;
a locking module configured to lock the any item sub-object based on the test completion instruction.
Optionally, the object management apparatus further includes:
the auditing module is configured to send a modification request to a target project party corresponding to any project sub-object for approval under the condition that the modification request aiming at the any project sub-object is received;
and the third merging module is configured to modify any one of the project sub-objects based on the modification request under the condition of approval passing.
Optionally, the object management apparatus further includes:
a statistics module configured to count a number of modification lines for each item sub-object;
a determination module configured to determine an item control object of the target item object based on the modified line number.
Optionally, the item sub-object includes: item branching; correspondingly, the object management platform comprises: a branch management platform, the project object comprising: a project principal branch, the target project object, comprising: and issuing branches.
In summary, the object management apparatus provided in the present application, by receiving a merge request for a project sub-object, determines, in response to the merge request, object management information determined by a user on an object management platform; merging the project sub-objects corresponding to the object management information and the initial project objects associated with the project sub-objects to generate target project objects, wherein the project sub-objects are migrated from the initial project objects, so that merging processing of the project sub-objects based on operation of a user on an object management platform is realized, that is, the objects are merged, controlled and managed through the object management platform, automation of object merging is realized, labor consumption is avoided for object merging, and object omission possibly occurring in a merging process is avoided.
The above is a schematic scheme of an object management apparatus of the present embodiment. It should be noted that the technical solution of the object management apparatus belongs to the same concept as the technical solution of the object management method, and for details that are not described in detail in the technical solution of the object management apparatus, reference may be made to the description of the technical solution of the object management method.
FIG. 7 illustrates a block diagram of a computing device 700 provided in accordance with one embodiment of the present description. The components of the computing device 700 include, but are not limited to, memory 710 and a processor 720. Processor 720 is coupled to memory 710 via bus 730, and database 750 is used to store data.
Computing device 700 also includes access device 740, access device 740 enabling computing device 700 to communicate via one or more networks 760. Examples of such networks include the Public Switched Telephone Network (PSTN), a Local Area Network (LAN), a Wide Area Network (WAN), a Personal Area Network (PAN), or a combination of communication networks such as the internet. Access device 740 may include one or more of any type of network interface, e.g., a Network Interface Card (NIC), wired or wireless, such as an IEEE802.11 Wireless Local Area Network (WLAN) wireless interface, a worldwide interoperability for microwave access (Wi-MAX) interface, an ethernet interface, a Universal Serial Bus (USB) interface, a cellular network interface, a bluetooth interface, a Near Field Communication (NFC) interface, and so forth.
In one embodiment of the present description, the above-described components of computing device 700, as well as other components not shown in FIG. 7, may also be connected to each other, such as by a bus. It should be understood that the block diagram of the computing device architecture shown in FIG. 7 is for purposes of example only and is not limiting as to the scope of the present description. Those skilled in the art may add or replace other components as desired.
Computing device 700 may be any type of stationary or mobile computing device, including a mobile computer or mobile computing device (e.g., tablet, personal digital assistant, laptop, notebook, netbook, etc.), mobile phone (e.g., smartphone), wearable computing device (e.g., smartwatch, smartglasses, etc.), or other type of mobile device, or a stationary computing device such as a desktop computer or PC. Computing device 700 may also be a mobile or stationary server.
Wherein, the steps of the object management method are implemented when the processor 720 executes the computer instructions.
The above is an illustrative scheme of a computing device of the present embodiment. It should be noted that the technical solution of the computing device and the technical solution of the object management method belong to the same concept, and details that are not described in detail in the technical solution of the computing device can be referred to the description of the technical solution of the object management method.
An embodiment of the present application further provides a computer readable storage medium, which stores computer instructions, and the computer instructions, when executed by a processor, implement the steps of the object management method as described above.
The above is an illustrative scheme of a computer-readable storage medium of the present embodiment. It should be noted that the technical solution of the storage medium belongs to the same concept as the technical solution of the object management method, and details that are not described in detail in the technical solution of the storage medium can be referred to the description of the technical solution of the object management method.
The foregoing description of specific embodiments of the present application has been presented. Other embodiments are within the scope of the following claims. In some cases, the actions or steps recited in the claims may be performed in a different order than in the embodiments and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results. In some embodiments, multitasking and parallel processing may also be possible or may be advantageous.
The computer instructions comprise computer program code which may be in the form of source code, object code, an executable file or some intermediate form, or the like. The computer-readable medium may include: any entity or device capable of carrying the computer program code, recording medium, usb disk, removable hard disk, magnetic disk, optical disk, computer Memory, Read-Only Memory (ROM), Random Access Memory (RAM), electrical carrier wave signals, telecommunications signals, software distribution medium, and the like. It should be noted that the computer readable medium may contain content that is subject to appropriate increase or decrease as required by legislation and patent practice in jurisdictions, for example, in some jurisdictions, computer readable media does not include electrical carrier signals and telecommunications signals as is required by legislation and patent practice.
It should be noted that, for the sake of simplicity, the above-mentioned method embodiments are described as a series of acts or combinations, but those skilled in the art should understand that the present application is not limited by the described order of acts, as some steps may be performed in other orders or simultaneously according to the present application. Further, those skilled in the art should also appreciate that the embodiments described in the specification are preferred embodiments and that the acts and modules referred to are not necessarily required in this application.
In the above embodiments, the descriptions of the respective embodiments have respective emphasis, and for parts that are not described in detail in a certain embodiment, reference may be made to related descriptions of other embodiments.
The preferred embodiments of the present application disclosed above are intended only to aid in the explanation of the application. Alternative embodiments are not exhaustive and do not limit the invention to the precise embodiments described. Obviously, many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the application and its practical applications, to thereby enable others skilled in the art to best understand and utilize the application. The application is limited only by the claims and their full scope and equivalents.

Claims (14)

1. An object management method, comprising:
receiving a merging request aiming at project sub-objects, and determining object management information determined by a user on an object management platform in response to the merging request;
merging the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object, wherein the project sub-object is migrated from the initial project object.
2. The object management method according to claim 1, wherein merging the item sub-object corresponding to the object management information and the initial item object associated with the item sub-object to generate the target item object comprises:
creating a target folder based on the merge request;
extracting an item sub-object corresponding to the object management information and an initial item object associated with the item sub-object from an item object library;
and storing the initial project object and the project sub-objects to the target folder in a merging mode to generate a target project object.
3. The object management method of claim 1, wherein after generating the target item object, further comprising:
issuing the target project object according to the time information in the object management information;
and merging the target project object to the initial project object under the condition of successful publishing.
4. The object management method according to claim 2, wherein the item sub-object is plural;
correspondingly, the storing the initial project object and the project sub-objects to the target folder in a merged manner to generate a target project object includes:
determining a target object file with two or more target project sub-objects modified for the same object file according to the object file corresponding to each project sub-object;
calculating the modification position of each target project sub-object aiming at the target object file by respectively comparing each target object file with the corresponding object file in the initial project object;
under the condition that the modification positions are not overlapped, merging the contents of the target object files;
and storing the initial project object and the project sub-objects to the target folder in a merging mode based on the merged target object file so as to generate a target project object.
5. The object management method according to claim 4, wherein after counting the modification location of each target item sub-object with respect to the target object file, the method further comprises:
when the modification position has a coincidence position, prompting aiming at the modification position and the coincidence position; or the like, or, alternatively,
determining, in the event that there is a coincident position at the modification location, modification times for the two or more target item sub-objects for the coincident position,
and determining modification information aiming at the superposition position according to the modification time, and merging the contents of the target object file based on the modification information.
6. The object management method of claim 1, wherein after generating the target item object, further comprising:
receiving an object removing instruction aiming at an item sub-object in the target item object, wherein the item removing instruction carries object information;
removing the corresponding first item sub-object from the target item object based on the object information.
7. The object management method of claim 6, wherein removing the corresponding first item sub-object from the target item object based on the object information comprises:
determining a first item sub-object corresponding to the object information based on the object information;
determining a second item sub-object except the first item sub-object in the item sub-objects corresponding to the object management information;
and merging the second project sub-object and the initial project object to generate a second target project object, and taking the second target project object as the target project object.
8. The object management method of claim 1, wherein after generating the target item object, further comprising:
receiving a test completion instruction aiming at any project sub-object in the target project object;
and locking any item child object based on the test completion instruction.
9. The object management method according to claim 8, wherein after locking the any item sub-object based on the test completion instruction, the method further comprises:
under the condition that a modification request aiming at any project sub-object is received, sending the modification request to a target project party corresponding to the project sub-object for approval;
and in the case of approval, modifying any project sub-object based on the modification request.
10. The object management method of claim 1, wherein after generating the target item object, further comprising:
counting the modification line number aiming at each project sub-object;
determining an item control object of the target item object based on the modified line number.
11. The object management method of claim 1, wherein the item sub-object comprises: item branching; correspondingly, the object management platform comprises: a branch management platform, the project object comprising: a project principal branch, the target project object, comprising: and issuing branches.
12. An object management apparatus, comprising:
the receiving module is configured to receive a merging request aiming at the project sub-objects, and determine the object management information determined by a user in the object management platform in response to the merging request;
and the merging module is configured to merge the project sub-object corresponding to the object management information and the initial project object associated with the project sub-object to generate a target project object, wherein the project sub-object is migrated from the initial project object.
13. A computing device comprising a memory, a processor, and computer instructions stored on the memory and executable on the processor, wherein the processor implements the steps of the method of any one of claims 1-11 when executing the computer instructions.
14. A computer-readable storage medium storing computer instructions, which when executed by a processor, perform the steps of the method of any one of claims 1 to 11.
CN202110435160.9A 2021-04-22 2021-04-22 Object management method and device Pending CN113050986A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110435160.9A CN113050986A (en) 2021-04-22 2021-04-22 Object management method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110435160.9A CN113050986A (en) 2021-04-22 2021-04-22 Object management method and device

Publications (1)

Publication Number Publication Date
CN113050986A true CN113050986A (en) 2021-06-29

Family

ID=76520159

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110435160.9A Pending CN113050986A (en) 2021-04-22 2021-04-22 Object management method and device

Country Status (1)

Country Link
CN (1) CN113050986A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265634A (en) * 2021-12-22 2022-04-01 中国农业银行股份有限公司 File submission method and device based on centralized version control system

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603393B1 (en) * 2007-04-02 2009-10-13 Juniper Networks, Inc. Software merging utility
CN104123126A (en) * 2013-04-26 2014-10-29 阿里巴巴集团控股有限公司 Method and device for generating merge conflict record list
CN109725926A (en) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 Manage the method and apparatus and data processing method of baseline
CN110069260A (en) * 2019-03-16 2019-07-30 平安城市建设科技(深圳)有限公司 Distribution management method, device, equipment and the storage medium of cross-version
CN111522578A (en) * 2020-04-23 2020-08-11 腾讯科技(深圳)有限公司 Branch management method and device
CN111930423A (en) * 2020-09-17 2020-11-13 四川新网银行股份有限公司 Method for tracing software release version based on microservice

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7603393B1 (en) * 2007-04-02 2009-10-13 Juniper Networks, Inc. Software merging utility
CN104123126A (en) * 2013-04-26 2014-10-29 阿里巴巴集团控股有限公司 Method and device for generating merge conflict record list
CN109725926A (en) * 2017-10-31 2019-05-07 阿里巴巴集团控股有限公司 Manage the method and apparatus and data processing method of baseline
CN110069260A (en) * 2019-03-16 2019-07-30 平安城市建设科技(深圳)有限公司 Distribution management method, device, equipment and the storage medium of cross-version
CN111522578A (en) * 2020-04-23 2020-08-11 腾讯科技(深圳)有限公司 Branch management method and device
CN111930423A (en) * 2020-09-17 2020-11-13 四川新网银行股份有限公司 Method for tracing software release version based on microservice

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
CODERTANZJ: "项目版本管理的最佳实践:飞流Flow(阿里AoneFlow)篇", pages 1 - 11, Retrieved from the Internet <URL:https://blog.csdn.net/bbcckkl/article/details/111087267> *
卢欣欣等: "《PHP动态网站开发实践教程》", 28 February 2021, 北京:机械工业出版社, pages: 259 - 262 *
殷广鸿,张希编著: "《VSS版本翻案理及其应用》", 31 January 2005, 北京:国防工业出版社 , pages: 82 - 88 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114265634A (en) * 2021-12-22 2022-04-01 中国农业银行股份有限公司 File submission method and device based on centralized version control system

Similar Documents

Publication Publication Date Title
US11561956B2 (en) Key pattern management in multi-tenancy database systems
CN110209650A (en) The regular moving method of data, device, computer equipment and storage medium
CN107016047A (en) Document query, document storing method and device
CN111708764A (en) Method and device for controlling database change version
CN109739828B (en) Data processing method and device and computer readable storage medium
CN110543469B (en) Database version management method and server
US10878185B2 (en) Annotation-based dependency calculations
CN111273943A (en) Application file generation method and device and electronic equipment
WO2022144828A1 (en) Target environment data seeding
CN111435367A (en) Knowledge graph construction method, system, equipment and storage medium
CN112000334A (en) Page development method, device, server and storage medium
CN117875288A (en) Form page generation method and device and electronic equipment
CN113050986A (en) Object management method and device
CN110865806A (en) Code processing method, device, server and storage medium
CN110244951B (en) Application publishing method and device
CN115328524A (en) Patch merging method and device, computer equipment and storage medium
CN116466983A (en) Code management device, method, storage medium and electronic device
CN111930387B (en) Integration method and device of integration package, electronic equipment and storage medium
CN115330171A (en) Business process control method and device, computer equipment and readable storage medium
CN115270731A (en) Collaborative editing method and device for mixed document
CN113420306A (en) Resource sharing method and device, computing equipment and computer readable storage medium
CN113791977A (en) Code development processing method and device, electronic equipment and storage medium
CN114115982A (en) Code issuing method, device, equipment and storage medium
US20230385056A1 (en) Removing inactive code to facilitate code generation
US11934800B2 (en) Generating metadata to facilitate code generation

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