Method and device for determining item state of item item, storage medium and electronic device
By automating the management of task branches for project items, the problem of inaccurate project item status was solved, achieving high efficiency and accuracy in project management.
Patent Information
- Application Number
- CN202511253849.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-03
- Publication Date
- 2026-01-09
AI Technical Summary
In existing technologies, the accuracy of the status of project items is not high, resulting in low project management efficiency.
By determining the task to be executed from the startup command on the front-end page, and building the target task branch based on the task number, the project status can be automatically determined by using code hosting tools to automatically manage branch merging and status updates.
It improved the accuracy of project status and management efficiency, simplified manual operations, and ensured the real-time reflection and accuracy of project progress.
Smart Images

Figure CN121301044A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of project management, in particular to a method and device for determining a state of a project matter, a storage medium and an electronic device. BACKGROUND
[0002] Currently, for project matters such as requirements and defects, project management tools are usually used for tracking and management. These tools generally adopt a manual mode of creating and updating matter states, for example, after creating a requirement matter, manually marking it as "to be developed", after taking over the requirement, manually updating it as "under development", and after development, manually marking it as "development completed". Or, after finding a defect matter, creating a defect single, manually setting it as "new", manually changing it to "under repair" after manual confirmation, and manually marking it as "repaired" after repair. Correspondingly, the states (such as "to be processed", "in progress", "completed") of the tasks split under the requirement or defect also need to be manually updated one by one. This scheme relies on a large amount of manual judgment and operation, and it is difficult to reflect the real progress of the project in real time and accurately. The accuracy of matter state updating cannot be guaranteed, which may affect project collaboration and decision-making. Therefore, in related technologies, there is a technical problem of low accuracy of matter state of project matters.
[0003] For the technical problem of low accuracy of matter state of project matters in related technologies, an effective solution has not been proposed. SUMMARY
[0004] Embodiments of the present application provide a method and device for determining a state of a project matter, a storage medium and an electronic device to at least solve the technical problem of low accuracy of matter state of project matters in related technologies.
[0005] According to an embodiment of the present application, a method for determining a state of a project matter is provided, comprising: determining an execution task from a start instruction of a front-end page, wherein the execution task is obtained by splitting a project matter; constructing a target task branch of the execution task based on a task number of the execution task; after merging the target task branch and a source branch corresponding to the target task branch according to a submission instruction of the front-end page, determining a matter state of the project matter according to a task state of the execution task, wherein the matter state is used to represent a current development progress of the project matter, and the current development progress includes one of the following: under development, development completed.
[0006] In an example embodiment, the target task branch of the execution task is constructed based on a task number of the execution task, including: determining the task number of the execution task according to a task name of the execution task; determining a code base to which the execution task belongs; in a case where the task number is greater than a preset number, if the execution task is a first started task of the project matter under the code base, generating a first task branch of the execution task, and determining the target task branch of the execution task according to the first task branch.
[0007] In an example embodiment, the first task branch of the execution task is generated, including: determining a first dependency branch corresponding to the execution task, wherein the first dependency branch includes one of: a trunk branch, a deployment branch; creating a first matter branch of the project matter based on the first dependency branch using a code hosting tool, and creating the first task branch according to the first matter branch, wherein a branch type of the first matter branch includes at least one of: a feature branch, a defect branch.
[0008] In an example embodiment, the target task branch of the execution task is constructed based on a start order of the execution task, including: in a case where the task number is greater than a preset number, if the execution task is not a first started task of the project matter under the code base, generating a second task branch of the execution task, and determining the target task branch of the execution task according to the second task branch.
[0009] In an example embodiment, the second task branch of the execution task is generated, including: determining a second matter branch corresponding to the execution task from a preset matter branch of the project matter, wherein a branch type of the second matter branch includes at least one of: a feature branch, a defect branch; and creating a second task branch corresponding to the execution task based on the second matter branch using a code hosting tool.
[0010] In an example embodiment, the method further includes: merging the target task branch and a source branch corresponding to the target task branch according to a submission instruction of the front-end page, by: generating a merge request according to the submission instruction of the front-end page; determining the source branch according to a dependency branch when the target task branch is created; and merging the target task branch and the source branch according to the merge request in chronological order.
[0011] In one exemplary embodiment, determining the status of the project item based on the task status of the execution task includes: receiving a notification message indicating that the merge is complete, updating the task status of the execution task to "completed"; and updating the status of the project item to "item completed" when it is determined that the task status of all execution tasks corresponding to the project item has been updated to "completed".
[0012] According to another aspect of the embodiments of this application, a device for determining the status of a project item is also provided, comprising: a first determining module, configured to determine an execution task from a startup instruction of a front-end page, wherein the execution task is obtained by splitting the project item; a building module, configured to build a target task branch of the execution task based on the task number of the execution task; and a second determining module, configured to determine the status of the project item based on the task status of the execution task after merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page, wherein the status of the item is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
[0013] According to another aspect of the embodiments of this application, a computer-readable storage medium is also provided, wherein a computer program is stored in the computer program, and the computer program is configured to execute a method for determining the status of the aforementioned project items during runtime.
[0014] According to another aspect of the embodiments of this application, an electronic device is also provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the method for determining the status of the aforementioned item through the computer program.
[0015] According to another aspect of the embodiments of this application, a computer program product is also provided, including a computer program, wherein when the computer program is executed by a processor, a method for determining the state of the aforementioned project items is implemented.
[0016] In this embodiment, the execution task is determined from the launch command of the front-end page, wherein the execution task is obtained by splitting the project items; a target task branch of the execution task is constructed based on the task number of the execution task; after merging the target task branch and the source branch corresponding to the target task branch according to the submission command of the front-end page, the item status of the project item is determined according to the task status of the execution task; this embodiment updates the item status of the project item through the automated management process of task branches, which solves the technical problem of low accuracy of item status of project items in related technologies, thereby significantly improving the efficiency of project management. Attached Figure Description
[0017] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with this application and, together with the description, serve to explain the principles of this application.
[0018] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, for those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0019] Figure 1 This is a schematic diagram of the hardware environment for a method of determining the status of a project item according to an embodiment of this application;
[0020] Figure 2 This is a flowchart of a method for determining the status of a project item according to an embodiment of this application;
[0021] Figure 3 This is a schematic diagram illustrating the principle of a method for determining the status of project items according to an embodiment of this application;
[0022] Figure 4 This is a timing diagram of the process for determining the status of project items according to an embodiment of this application;
[0023] Figure 5 This is a structural block diagram of a device for determining the status of a project item according to an embodiment of this application. Detailed Implementation
[0024] To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present application, and not all embodiments. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative effort should fall within the scope of protection of the present application.
[0025] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in orders other than those illustrated or described herein. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion; for example, a process, method, system, product, or apparatus that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to such processes, methods, products, or apparatus.
[0026] According to one aspect of the embodiments of this application, a method for determining the status of a project item is provided. This method for determining the status of a project item is widely applicable to whole-house intelligent digital control application scenarios such as smart homes, smart home ecosystems, smart home device ecosystems, and smart house ecosystems. Optionally, in this embodiment, the above-mentioned method for determining the status of a project item can be applied to, for example... Figure 1 The hardware environment shown consists of terminal device 102 and server 104. For example... Figure 1 As shown, server 104 is connected to terminal device 102 via a network and can be used to provide services (such as application services) to the terminal or clients installed on the terminal. A database can be set up on the server or independently of the server to provide data storage services for server 104. Cloud computing and / or edge computing services can be configured on the server or independently of the server to provide data processing services for server 104.
[0027] The aforementioned network may include, but is not limited to, at least one of the following: wired network, wireless network. The aforementioned wired network may include, but is not limited to, at least one of the following: wide area network, metropolitan area network, local area network. The aforementioned wireless network may include, but is not limited to, at least one of the following: Wi-Fi (Wireless Fidelity), Bluetooth. The terminal device 102 may not be limited to PC, mobile phone, tablet computer, smart air conditioner, smart range hood, smart refrigerator, smart oven, smart stove, smart washing machine, smart water heater, smart washing equipment, smart dishwasher, smart projector, smart TV, smart clothes rack, smart curtains, smart audio-visual equipment, smart socket, smart speaker, smart speaker box, smart fresh air equipment, smart kitchen and bathroom equipment, smart bathroom equipment, smart robot vacuum cleaner, smart window cleaning robot, smart mopping robot, smart air purifier, smart steam oven, smart microwave oven, smart water heater, smart air purifier, smart water dispenser, smart door lock, etc.
[0028] This embodiment provides a method for determining the status of a project item, applied to the aforementioned terminal device. Figure 2 This is a flowchart of a method for determining the status of a project item according to an embodiment of this application. The process includes the following steps:
[0029] Step S202: Determine the execution task from the startup command of the front-end page, wherein the execution task is obtained by breaking down the project items;
[0030] Optionally, before breaking down project items into execution tasks, a three-tiered item association system must be established in advance, along with a unique correspondence and hierarchical relationship between items and branches. The three-tiered item association system is as follows:
[0031] Level 1: Requirements, which can be represented as Features. As top-level items, they can be broken down into multiple tasks.
[0032] Level 2: Defects, which can be represented as bugs, exist independently or are associated with requirements, and can also be broken down into multiple tasks.
[0033] Level 3: Task, which belongs to requirements or defects, and is the smallest unit of execution.
[0034] The unique correspondence and hierarchical relationship between items and branches means that each task, each requirement, or each defect corresponds to a unique code branch within a unique codebase.
[0035] By pre-setting the hierarchical relationships between requirements, defects, and tasks to define branch dependencies and merging relationships, consistency between subsequent branch merging operations and item status updates can be ensured. Breaking down project items into executable tasks can be understood as breaking down requirements or defects into tasks to be performed.
[0036] Step S204: Construct the target task branch of the task based on the task number of the task being executed;
[0037] Step S206: After merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page, the item status of the project item is determined according to the task status of the executed task. The item status is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
[0038] Through the above steps, the execution task is determined from the launch command of the front-end page, wherein the execution task is obtained by splitting the project items; the target task branch of the execution task is constructed based on the task number of the execution task; after merging the target task branch and the source branch corresponding to the target task branch according to the submission command of the front-end page, the item status of the project item is determined according to the task status of the execution task. This embodiment updates the item status of the project item through the automated management process of task branches, which solves the technical problem of low accuracy of item status of project items in related technologies, thereby significantly improving the efficiency of project management.
[0039] Optionally, in other embodiments, the code quality of task branches can be further improved by introducing automated testing and code review mechanisms.
[0040] Optionally, before constructing the target task branch of the execution task based on the startup order of the execution tasks, the method further includes: determining the code library corresponding to the execution task according to the task number of the execution task, and setting the task status of the execution task to an initial state, wherein the initial state is that the task has not started. Further, after the target task branch is created, the task status of the execution task is updated to in progress.
[0041] In an exemplary embodiment, the process of constructing a target task branch for an execution task based on its task number includes: determining the task number of the execution task according to its task name; determining the code repository to which the execution task belongs; if the task number is greater than a preset number, and if the execution task is the first initiation task of the project item under the code repository, then generating a first task branch for the execution task, and determining the target task branch based on the first task branch. This embodiment improves the accuracy and traceability of branch creation through the unique correspondence between task numbers and code repositories. Furthermore, this embodiment employs conditional judgment logic to determine the branch creation method based on the initiation order of the execution tasks, improving the flexibility and standardization of the branching strategy. Moreover, the automated branch creation technology in this embodiment improves the efficiency and accuracy of branch management.
[0042] Optionally, the preset number mentioned above, for example, is 0, which represents the task number in the testing or pre-execution phase. Numbers of 1 and above represent the numbers of the execution tasks mentioned above.
[0043] Optionally, in other embodiments, the priority of branch creation and merging can be optimized by introducing a task priority sorting mechanism.
[0044] In an exemplary embodiment, generating the first task branch of the execution task may include: determining a first dependency branch corresponding to the execution task, wherein the first dependency branch includes one of the following: a trunk branch, a deployment branch; using a code hosting tool to create a first item branch of the project item based on the first dependency branch, and creating the first task branch according to the first item branch, wherein the branch type of the first item branch includes at least one of the following: a feature branch, a defect branch. Through explicit branch dependencies, this embodiment improves the standardization and rationality of branch creation. Furthermore, this embodiment utilizes the API (Application Programming Interface) of the code hosting tool to create branches, achieving automation and standardization of branch operations.
[0045] Optionally, in other embodiments, a branch permission control mechanism can be introduced to restrict the operation permissions of specific roles on specific branches, thereby improving security and compliance.
[0046] In an exemplary embodiment, the scheme for constructing the target task branch of the execution task based on the startup order of the execution tasks includes: if the task number is greater than a preset number, and if the execution task is not the first startup task of the project item in the code repository, then a second task branch of the execution task is generated, and the target task branch of the execution task is determined according to the second task branch. This embodiment achieves automated branch creation by associating the task startup order and task number, simplifying the development process and improving development efficiency. In addition, this embodiment utilizes conditional judgment logic and branch naming conventions to ensure the accuracy and traceability of branch creation.
[0047] Optionally, in other embodiments, a task status synchronization mechanism can be introduced to ensure real-time synchronization between branch status and project item status, thereby reducing the lag in status updates.
[0048] In one exemplary embodiment, generating a second task branch for the execution task may include: determining a second task branch corresponding to the execution task from preset task branches of the project items, wherein the branch type of the second task branch includes at least one of the following: feature branch, defect branch; and using a code hosting tool to create the second task branch corresponding to the execution task based on the second task branch. This embodiment improves the speed of branch creation by introducing preset task branches.
[0049] Optionally, in other embodiments, a branch merge conflict resolution mechanism can be introduced to automatically handle code conflicts during branch merging and resolve collaboration issues during the development process.
[0050] In an exemplary embodiment, the target task branch and its corresponding source branch can also be merged according to the submission instruction of the front-end page in the following manner: generating a merge request according to the submission instruction of the front-end page; determining the source branch according to the dependent branches when the target task branch was created; and merging the target task branch and the source branch in chronological order according to the merge request. This embodiment integrates the front-end page and the code hosting tool, enabling automated generation and processing of merge requests. Furthermore, this embodiment utilizes the hook function of the code hosting tool to automate the generation and processing of merge requests, improving the efficiency and accuracy of code merging and reducing the complexity and error-proneness of manual operations.
[0051] Optionally, the target task branch is like the first task branch, and the source branch is the first dependency branch.
[0052] Optionally, in other embodiments, an automated code review mechanism can be introduced to automatically check the quality of merged code and address code quality and security issues.
[0053] In one exemplary embodiment, the scheme for determining the item status of the project item based on the task status of the execution task includes: receiving a notification message indicating that the merge is complete, updating the task status of the execution task to "completed"; and updating the item status of the project item to "item completed" when it is determined that the task status of all execution tasks corresponding to the project item has been updated to "completed". This embodiment achieves automatic updating of task status through the event listening mechanism of the code hosting tool, improving the efficiency and accuracy of project management.
[0054] Alternatively, in other embodiments, if there are unfinished tasks, the current status of the project item is maintained.
[0055] In other embodiments, the project schedule management problem can also be solved by introducing a project schedule prediction mechanism that predicts the completion time of project items based on historical data.
[0056] To better understand the process of determining the status of the above-mentioned project items, the implementation method of determining the status of the above-mentioned project items will be described below in conjunction with optional embodiments, but this is not intended to limit the technical solution of the embodiments of this application.
[0057] This embodiment provides a method for determining the status of a project item, which includes the following steps:
[0058] Step S1: Establish a three-level item association system:
[0059] Level 1: Feature: As a top-level item, it can be broken down into multiple tasks.
[0060] Level 2: Defects (Bugs): They can exist independently or be associated with requirements, and can also be broken down into multiple tasks.
[0061] Level 3: Task: Belongs to requirements or defects and is the smallest unit of execution.
[0062] Step S2: Establish a unique correspondence and hierarchical relationship between items and branches.
[0063] 1) Each task, requirement, and defect corresponds to a unique code branch in the codebase.
[0064] Each task can only be associated with one codebase, ensuring the uniqueness of the codebase. Branch naming conventions (e.g., "feature + {requirement ID}", "bug + {defect ID}", "task + {task ID}") ensure the uniqueness and traceability of branches within the codebase. The task ID is the task number mentioned above.
[0065] 2) The relationship between tasks and their subordinate items determines the hierarchical relationship of each branch in the codebase, which defines the source branch used for creation and the target branch for merging. The merge operation can be automatically triggered through hooks in a version control system (such as Git), for example, by calling a system interface to update the item status when a MergeRequest merge is successful.
[0066] By following the steps above, a three-level system of correspondence between items (requirements-defects-tasks) and branches can be established, and item traceability and management can be achieved through branch naming conventions and uniqueness constraints.
[0067] The branching strategies for different branches are as follows:
[0068] For the master branch: it can be used as an archive or release branch for online code, and deployment branches, feature branches or defect branches can be created based on this branch.
[0069] For deployment branches (release): You can use them to create branch versions corresponding to the deployment environment as needed. Feature branches or defect branches can be created based on this branch. The target branch for merging deployment branches can be any release branch.
[0070] Deployment branches are built using a unique three-segment version number. During the build process, a tag is created in the format "three-segment version number_date stamp" to easily distinguish different version contents. Examples include "Tag:0.0.1_YYYYMMMDD01" and "Tag:0.0.1_YYYYMMMDD02".
[0071] For feature branches: These can be understood as branches that are uniquely corresponding to requirements and are specifically created for developing specific functional features. Defect branches or task branches can be created based on this branch. The target branch for merging a feature branch can be any release branch.
[0072] For bug branches: This refers to a branch that is uniquely created to fix the bug. Task branches can be created based on this branch. The target branch that can be merged can be a feature branch that was depended on when it was created, or any release branch.
[0073] For task branches: These are the lowest-level branches in daily development, uniquely corresponding to each task. The target branch to merge with can only be the dependency branch it was created from.
[0074] It should be noted that, in order to achieve quality control of released code while also satisfying the release processes of different teams, branches that are allowed to be merged into master must meet the following requirements:
[0075] 1. When a requirement test passes or a defect is closed, the corresponding feature branch and bug branch can support adding a master branch within the range of possible target branches to meet the needs of code archiving or release at the granularity of a single requirement or defect.
[0076] 2. When a version passes testing, the corresponding release branch can support adding a master branch within the range of target branches to be merged, so as to meet the requirement of archiving or releasing code as a whole version.
[0077] The branching strategy provides hierarchical branch constraint logic, which, through the hierarchical relationship of requirement-defect-task, can predefine the source of branch creation and the target of merging, thus avoiding state errors caused by chaotic branching operations from the source.
[0078] Step S3: Execute the item update process. In this step, as follows... Figure 3As shown, users only need to follow the natural workflow to perform page operations such as "splitting tasks -> starting tasks -> committing code," while steps such as "task status transition, branch creation, and generating branch merge requests" can be automated. Specifically, after a user splits a requirement or defect to obtain a task (i.e., the task mentioned above), and selects the code repository associated with the task, the task is automatically initialized to the "not started" state. When the user starts the task, the following logic can be executed to transition the status to the "in progress" state.
[0079] If it is the first task to start a requirement or defect in this codebase, first select the first dependency branch (master or release), then call the API of the code hosting tool to create a task branch based on the first dependency branch, such as a feature branch (representing a feature branch) and a bug branch (representing a defect branch), and then create a task branch (representing a task branch, corresponding to the first task branch mentioned above) based on the feature and bug branches.
[0080] If it is not the first task to start a requirement or defect in this codebase, the code hosting tool's API is used to directly create a branch, such as creating a task branch (corresponding to the second task branch) based on the existing feature branch and bug branch. The existing feature branch and bug branch correspond to the second task branch mentioned above.
[0081] After a user submits code, a merge request is created through the code hosting tool's API. When the code hosting tool detects that the merge has been completed, the task flow is automatically switched to the "completed" status.
[0082] Furthermore, it can also be based on, for example Figure 4 The implementation steps shown illustrate the process of updating the status of the above-mentioned items:
[0083] Step 1. Break down the task and select the code repository.
[0084] Step 2. Initialize the task status to "Not Started".
[0085] Step 3. State initialization complete.
[0086] Step 4. Start the task.
[0087] Step 5. Determine if it is the first startup task in the code repository.
[0088] If yes, proceed to steps 6-10. If no, proceed to steps 11-13.
[0089] Step 6. A parent branch needs to be created.
[0090] Step 7. Select the dependency branch (master / release).
[0091] Step 8. Create the feature / bug branch.
[0092] Step 9. Create a task branch.
[0093] Step 10. Branch created successfully.
[0094] Step 11. Create a sub-branch directly.
[0095] Step 12. Create a task branch.
[0096] Step 13. Branch created successfully.
[0097] Step 14. Update the task status to "In Progress".
[0098] Step 15. Status update complete.
[0099] Step 16. Submit the code.
[0100] Step 17. Create a merge request.
[0101] Step 18. Trigger the merge event.
[0102] Step 19. Notification of merge completion.
[0103] Step 20. Update the task status to "Completed".
[0104] Step 21. Task status update complete.
[0105] Step 22. Check the status of all tasks under requirements / defects.
[0106] If all tasks are marked as "completed", then proceed with the following steps.
[0107] Step 23. Trigger the requirement / defect status transition.
[0108] Step 24. Update the requirement / defect status to "Development Completed". Additionally, it can automatically unregister task branches so that the branch can be re-fetched when the task restarts.
[0109] Step 25. Requirement / defect status update complete.
[0110] If there are any incomplete tasks, proceed with the following steps.
[0111] Step 26. Maintain the current state.
[0112] Through the steps described above, this embodiment constructs a branching strategy system corresponding to project management items (requirements, defects, tasks). Then, utilizing the API and automation rules of the code hosting tool, it achieves automatic status transitions for these items. Starting a task automatically triggers branch creation and simultaneously manages the task status transition. Merging task branches automatically triggers updates to the item status. This establishes a status linkage mechanism between parent items (requirements / defects) and child tasks, automatically driving updates to the parent item status upon completion of the child task.
[0113] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods of the various embodiments of this application.
[0114] Figure 5 This is a structural block diagram of a device for determining the status of a project item according to an embodiment of this application; as shown... Figure 5 As shown, it includes:
[0115] The first determining module 52 is used to determine the execution task from the startup command of the front-end page, wherein the execution task is obtained by breaking down the project items;
[0116] Module 54 is used to construct the target task branch of the execution task based on the task number of the execution task;
[0117] The second determining module 56 is used to determine the item status of the project item based on the task status of the executed task after merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page. The item status is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
[0118] Using the aforementioned device, an execution task is determined from the launch command on the front-end page. The execution task is obtained by splitting project items. A target task branch is constructed based on the task number of the execution task. After merging the target task branch and its corresponding source branch according to the submission command on the front-end page, the item status of the project item is determined based on the task status of the execution task. This embodiment updates the item status of project items through an automated task branch management process, solving the technical problem of low accuracy in item status in related technologies, thereby significantly improving the efficiency of project management.
[0119] In an exemplary embodiment, the construction module is further configured to: determine the task number of the execution task based on the task name of the execution task; determine the code library to which the execution task belongs; if the task number is greater than a preset number, and if the execution task is the first startup task of the project item under the code library, generate a first task branch of the execution task, and determine the target task branch of the execution task based on the first task branch.
[0120] In an exemplary embodiment, the build module is further configured to: determine a first dependency branch corresponding to the execution task, wherein the first dependency branch includes one of the following: a trunk branch, a deployment branch; use a code hosting tool to create a first item branch of the project item based on the first dependency branch, and create the first task branch according to the first item branch, wherein the branch type of the first item branch includes at least one of the following: a feature branch, a defect branch.
[0121] In an exemplary embodiment, the building module is further configured to: if the task number is greater than a preset number, and if the execution task is not the first startup task of the project item under the code library, generate a second task branch of the execution task, and determine the target task branch of the execution task based on the second task branch.
[0122] In an exemplary embodiment, the construction module is further configured to: determine a second item branch corresponding to the execution task from preset item branches of the project item, wherein the branch type of the second item branch includes at least one of the following: feature branch, defect branch; and use a code hosting tool to create a second task branch corresponding to the execution task based on the second item branch.
[0123] In one exemplary embodiment, the second determining module is further configured to merge the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page in the following manner: generating a merge request according to the submission instruction of the front-end page; determining the source branch according to the dependent branches when the target task branch was created; and merging the target task branch and the source branch in chronological order according to the merge request.
[0124] In one exemplary embodiment, the second determining module is further configured to: receive a notification message indicating that the merging is complete, update the task status of the execution task to "completed"; and, if it is determined that the task status of all execution tasks corresponding to the project item has been updated to "completed", update the item status of the project item to "item completed".
[0125] Embodiments of this application also provide a storage medium including a stored program, wherein the program executes any of the methods described above when it is run.
[0126] Optionally, in this embodiment, the storage medium may be configured to store program code for performing the following steps:
[0127] S1, determine the task to be executed from the startup command of the front-end page, wherein the task to be executed is obtained by breaking down the project items;
[0128] S2, construct the target task branch of the task based on the task number of the task being executed;
[0129] S3, after merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page, the item status of the project item is determined according to the task status of the executed task, wherein the item status is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
[0130] Embodiments of this application also provide an electronic device including a memory and a processor, wherein the memory stores a computer program and the processor is configured to run the computer program to perform the steps in any of the above method embodiments.
[0131] Optionally, the electronic device may further include a transmission device and an input / output device, wherein the transmission device is connected to the processor and the input / output device is connected to the processor.
[0132] Optionally, in this embodiment, the processor can be configured to perform the following steps via a computer program:
[0133] S1, determine the task to be executed from the startup command of the front-end page, wherein the task to be executed is obtained by breaking down the project items;
[0134] S2, construct the target task branch of the task based on the task number of the task being executed;
[0135] S3, after merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page, the item status of the project item is determined according to the task status of the executed task, wherein the item status is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
[0136] Optionally, in this embodiment, the storage medium may include, but is not limited to, various media capable of storing program code, such as USB flash drives, read-only memory (ROM), random access memory (RAM), portable hard drives, magnetic disks, or optical disks.
[0137] Optionally, embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.
[0138] Optionally, embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, implements the steps in any of the above method embodiments.
[0139] Optionally, embodiments of this application also provide a computer program, which includes computer instructions stored in a computer-readable storage medium; a processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the steps in any of the above method embodiments.
[0140] Optionally, specific examples in this embodiment can refer to the examples described in the above embodiments and optional implementations, and will not be repeated here.
[0141] Obviously, those skilled in the art should understand that the modules or steps of this application described above can be implemented using general-purpose computing devices. They can be centralized on a single computing device or distributed across a network of multiple computing devices. Optionally, they can be implemented using computer-executable program code, thereby storing them in a storage device for execution by a computing device. In some cases, the steps shown or described can be performed in a different order than those presented here, or they can be fabricated as separate integrated circuit modules, or multiple modules or steps can be fabricated as a single integrated circuit module. Thus, this application is not limited to any particular combination of hardware and software.
[0142] The above description is only a preferred embodiment of this application. It should be noted that for those skilled in the art, several improvements and modifications can be made without departing from the principle of this application, and these improvements and modifications should also be considered within the scope of protection of this application.
Claims
1. A method for determining the status of a project item, characterized in that, include: The task to be executed is determined from the startup command of the front-end page, wherein the task to be executed is obtained by breaking down the project items; Construct the target task branch of the task based on the task number of the task being executed; After merging the target task branch and the corresponding source branch according to the submission instruction of the front-end page, the item status of the project item is determined according to the task status of the executed task. The item status is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
2. The method for determining the status of a project item according to claim 1, characterized in that, Based on the task number of the task being executed, the target task branch of the task is constructed, including: The task number of the task to be executed is determined based on the task name of the task to be executed. Determine the codebase to which the task to be executed belongs; If the task number is greater than a preset number, and if the task to be executed is the first task to be started in the code repository for the project, then a first task branch of the task to be executed is generated, and the target task branch of the task to be executed is determined based on the first task branch.
3. The method for determining the status of a project item according to claim 2, characterized in that, Generating the first task branch of the execution task includes: Determine the first dependency branch corresponding to the execution task, wherein the first dependency branch includes one of the following: the trunk branch, or the deployment branch; The code hosting tool creates a first item branch for the project item based on the first dependency branch, and creates a first task branch based on the first item branch, wherein the branch type of the first item branch includes at least one of the following: feature branch, defect branch.
4. The method for determining the status of a project item according to claim 2, characterized in that, Based on the startup order of the execution tasks, the target task branch of the execution tasks is constructed, including: If the task number is greater than the preset number, and if the task to be executed is not the first task to be started under the code repository for the project item, then a second task branch of the task to be executed is generated, and the target task branch of the task to be executed is determined based on the second task branch.
5. The method for determining the status of a project item according to claim 4, characterized in that, Generating the second task branch of the execution task includes: The second item branch corresponding to the execution task is determined from the preset item branches of the project item, wherein the branch type of the second item branch includes at least one of the following: feature branch, defect branch; Use a code hosting tool to create a second task branch corresponding to the execution task based on the second item branch.
6. The method for determining the status of a project item according to claim 1, characterized in that, The method further includes: The target task branch and its corresponding source branch are merged according to the submission instructions on the front-end page in the following manner: A merge request is generated based on the submission command on the front-end page; The source branch is determined based on the dependent branches when the target task branch is created. The target task branch and the source branch are merged in chronological order according to the merge request.
7. The method for determining the status of a project item according to claim 1, characterized in that, Determining the status of the project item based on the task status of the executed task includes: Upon receiving a notification message indicating that the merge is complete, update the task status of the executed task to "completed". Once it is determined that the task status of all execution tasks corresponding to the project item has been updated to "completed", the item status of the project item will be updated to "item completed".
8. A device for determining the status of a project item, characterized in that, include: The first determining module is used to determine the execution task from the startup command of the front-end page, wherein the execution task is obtained by breaking down the project items; The construction module is used to construct the target task branch of the execution task based on the task number of the execution task; The second determining module is used to determine the status of the project item based on the task status of the executed task after merging the target task branch and the source branch corresponding to the target task branch according to the submission instruction of the front-end page. The status of the item is used to indicate the current development progress of the project item, and the current development progress includes one of the following: under development, development completed.
9. A computer-readable storage medium, characterized in that, The computer-readable storage medium includes a stored program, wherein the program, when executed, performs the method described in any one of claims 1 to 7.
10. An electronic device comprising a memory and a processor, characterized in that, The memory stores a computer program, and the processor is configured to execute the method described in any one of claims 1 to 7 through the computer program.