WO2023221416A1 - 信息生成方法、装置、设备以及存储介质 - Google Patents

信息生成方法、装置、设备以及存储介质 Download PDF

Info

Publication number
WO2023221416A1
WO2023221416A1 PCT/CN2022/130514 CN2022130514W WO2023221416A1 WO 2023221416 A1 WO2023221416 A1 WO 2023221416A1 CN 2022130514 W CN2022130514 W CN 2022130514W WO 2023221416 A1 WO2023221416 A1 WO 2023221416A1
Authority
WO
WIPO (PCT)
Prior art keywords
component
version information
information
version
dependent
Prior art date
Application number
PCT/CN2022/130514
Other languages
English (en)
French (fr)
Inventor
刘俊启
Original Assignee
北京百度网讯科技有限公司
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 北京百度网讯科技有限公司 filed Critical 北京百度网讯科技有限公司
Publication of WO2023221416A1 publication Critical patent/WO2023221416A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Definitions

  • the present disclosure relates to the field of computer technology, specifically to the field of component management technology, and in particular to information generation methods, devices, equipment and storage media.
  • the present disclosure provides an information generation method, device, equipment and storage medium.
  • an information generation method including: in response to determining that version information of a component has changed, determining the component as a target component; and determining, based on a component dependency table, dependencies that depend on the target component.
  • an information generation device including: a first determination module configured to determine the component as a target component in response to a change in version information of the component; a second determination module, It is configured to determine the dependent components that depend on the target component based on the component dependency table, where the dependencies between components are stored in the component dependency table; the configuration module is configured to determine dependencies based on preset version configuration rules. Component configuration version information; the first saving module is configured to save the changed version information of the target component and the configured version information of the dependent component to the component dependency table based on the dependency relationship between the target component and the dependent component. .
  • an electronic device including: at least one processor; and a memory communicatively connected to the at least one processor; wherein the memory stores instructions that can be executed by the at least one processor, and the instructions are At least one processor executes, so that at least one processor can execute the method described in any implementation manner in the first aspect.
  • a non-transitory computer-readable storage medium storing computer instructions, the computer instructions being used to cause a computer to execute the method described in any implementation manner in the first aspect.
  • a computer program product including a computer program.
  • the computer program When executed by a processor, the computer program implements the method described in any implementation manner of the first aspect.
  • Figure 1 is an exemplary system architecture diagram in which the present disclosure may be applied
  • Figure 2 is a flow chart of one embodiment of an information generation method according to the present disclosure
  • Figure 3 is a schematic diagram of an application scenario of the information generation method according to the present disclosure.
  • Figure 4 is a flow chart of another embodiment of an information generation method according to the present disclosure.
  • Figure 5 is a schematic structural diagram of an embodiment of an information generation device according to the present disclosure.
  • FIG. 6 is a block diagram of an electronic device used to implement the information generation method of an embodiment of the present disclosure.
  • FIG. 1 shows an exemplary system architecture 100 to which embodiments of the information generation method or information generation apparatus of the present disclosure can be applied.
  • the system architecture 100 may include terminal devices 101, 102, 103, a network 104 and a server 105.
  • the network 104 is a medium used to provide communication links between the terminal devices 101, 102, 103 and the server 105.
  • Network 104 may include various connection types, such as wired, wireless communication links, or fiber optic cables, among others.
  • Terminal devices 101, 102, 103 Users can use terminal devices 101, 102, 103 to interact with the server 105 through the network 104 to receive or send information, etc.
  • Various client applications can be installed on the terminal devices 101, 102, and 103.
  • the terminal devices 101, 102, and 103 may be hardware or software.
  • the terminal devices 101, 102, and 103 may be various electronic devices, including but not limited to smart phones, tablet computers, laptop computers, desktop computers, and so on.
  • the terminal devices 101, 102, and 103 are software, they can be installed in the above-mentioned electronic devices. It can be implemented as multiple software or software modules, or as a single software or software module. There are no specific limitations here.
  • Server 105 can provide various services.
  • the server 105 can analyze and process each component and the version information of each component obtained from the terminal devices 101, 102, 103, and generate a processing result (for example, the changed version information of the target component and the configured configuration of the dependent component).
  • the version information is saved to the component dependency table).
  • the server 105 may be hardware or software.
  • the server 105 can be implemented as a distributed server cluster composed of multiple servers or as a single server.
  • the server 105 is software, it can be implemented as multiple software or software modules (for example, used to provide distributed services), or it can be implemented as a single software or software module. There are no specific limitations here.
  • the information generation method provided by the embodiments of the present disclosure is generally executed by the server 105, and accordingly, the information generation device is generally provided in the server 105.
  • the information generation method includes the following steps:
  • Step 201 In response to determining that the version information of the component has changed, determine the component as the target component.
  • the execution subject of the information generation method determines that the version information of the component has changed
  • the component whose version information has changed will be determined as the target component.
  • an APP application
  • an APP includes multiple modules or components. In the daily research and development process, changes in modules or components will cause changes in other related modules or components. If not maintained well, it will Affect the functionality and stability of the APP. Therefore, this embodiment maintains dependencies between components, thereby automatically updating version information between components.
  • the above-mentioned execution subject obtains the code submitted by the developer, records the dependency relationship between each component according to the submitted code, and records the version information relationship of each component, thereby obtaining a component dependency table.
  • the above-mentioned execution subject detects that the version information of a certain component in each component has changed (that is, the developer updates a certain component to submit a new version of the component), the above-mentioned execution subject will update the component whose version information has changed. identified as the target component.
  • Step 202 Determine dependent components that depend on the target component based on the component dependency table.
  • the execution subject determines the dependent components that depend on the target component based on the component dependency table, where dependencies between components are stored in the component dependency table. Since the above execution subject has pre-constructed a component dependency table that stores dependencies between components, after determining the target component, the above execution subject will determine the components that depend on the target component from the component dependency table and add them Marked as dependent components of the target component.
  • the component dependency table records "component L11 depends on components L21 and L23", then when it is determined that the version information of component L21 has changed, that is, the target component is component L21, then according to the component dependency table, you can It is determined that the dependent component that depends on the target component L21 is the component L11.
  • Step 203 Configure version information for dependent components based on preset version configuration rules.
  • the execution subject after determining the dependent components of the target component, configures version information for the dependent components based on preset configuration rules. Since there are dependencies between the version information of components, and there are also interface calls or variable dependencies between components, when the public interface or variables of the target component changes, the dependent components also need to be modified accordingly, otherwise , an error will occur when calling.
  • version information is configured accordingly for the dependent component. For example, if the interface or variable of the target component does not change, then the version information of the dependent component does not change, then it is also the version information that the target component that has not changed the version information depends on. This version information can be obtained from the component dependency table; if If the interface or variable of the target component has changed, the version information of the dependent component will be configured as the changed version information of the target component.
  • Step 204 Based on the dependency relationship between the target component and the dependent component, save the changed version information of the target component and the configured version information of the dependent component into the component dependency table.
  • the above execution subject will save the changed version information of the target component and the configured version information of the dependent component based on the dependency relationship between the target component and the dependent component in the component dependency relationship table, and also That is, the corresponding relationship between the changed version information of the target component and the configured version information of the dependent component is added to the component dependency table.
  • FIG. 3 a schematic diagram of an application scenario of the information generation method according to the present disclosure is shown.
  • the execution subject 301 determines that the version information of a certain component has changed, it will determine the component whose version information has changed as the target component 302. Then, the execution subject 301 determines dependent components that depend on the target component 302 based on a pre-built component dependency table that stores dependency relationships between components. Afterwards, the execution subject 301 configures version information for the dependent component based on the preset version configuration rules, for example, based on changes in the interface or variables of the target component, configures version information for the dependent component. Finally, the execution subject 301 will save the changed version information of the target component and the configured version information of the dependent component based on the dependency relationship between the target component and the dependent component in the component dependency table, and save them to the component dependency table. middle.
  • the information generation method provided by the embodiment of the present disclosure first determines the component as the target component in response to a change in the version information of the component; then determines the dependent components that depend on the target component based on the component dependency relationship table; and then determines the dependent components that depend on the target component based on the preset version configuration rules to configure version information for dependent components; finally, based on the dependency relationship between the target component and the dependent component, save the changed version information of the target component and the configured version information of the dependent component to the component dependency table .
  • the information generation method in this embodiment records the dependencies between components and associates version information to automatically configure version information for dependent components based on preset configuration rules, thereby improving the maintenance efficiency of component version information. This further improves R&D efficiency.
  • the collection, storage, use, processing, transmission, provision and disclosure of user personal information are in compliance with relevant laws and regulations and do not violate public order and good customs.
  • FIG. 4 illustrates a process 400 of another embodiment of an information generation method according to the present disclosure.
  • the information generation method includes the following steps:
  • Step 401 In response to determining that the version information of the component has changed, determine the component as the target component.
  • the execution subject of the information generation method can determine the component as the target component when it is determined that the version information of the component has changed.
  • Step 401 is basically the same as step 201 in the previous embodiment. For specific implementation, please refer to the previous description of step 201, which will not be described again here.
  • an APP can contain multiple components. Assume that the number of components included is m (m is a positive integer). The target component is represented as x, and the number of dependent components of x is n (n is a positive integer). , then m is greater than n, and x belongs to one of m.
  • Step 402 Determine dependent components that depend on the target component based on the component dependency relationship table.
  • the execution subject of the information generation method can determine the dependent components that depend on the target component based on the component dependency relationship table, where the component dependency relationship table stores components dependencies between.
  • Step 402 is basically the same as step 202 in the previous embodiment. For specific implementation, please refer to the previous description of step 202, which will not be described again here.
  • step 405 is executed.
  • Step 403 In response to determining that the interface information and variable information of the target component have not changed, select the historical version information of the dependent component from the component dependency table.
  • the above-mentioned execution subject will determine whether the interface information and variable information of the target component have changed, and if the interface information and variable information of the target component have not changed, the version information of the dependent component remains unchanged.
  • the execution subject will select the historical version information of the dependent component from the component dependency table.
  • the historical version information is the latest updated version information.
  • Step 404 Use historical version information as configured version information of dependent components.
  • the execution subject will use the obtained historical version information as the configured version information of the dependent component. This enables configuring version information for dependent components without changing the interface information and variable information of the target component.
  • version 1.0.0 of L23 depends on version 1.0.0 of L33. Then when the version of L33 is changed to 1.1.0, but the interface and variables of L33 have not changed, the version information of the dependent component L23 of the target component L33 does not need to be changed at this time, and the version information of L23 is still its historical version information 1.0.0. That is to say, at this time, version 1.0.0 of L23 depends on version 1.1.0 of L33.
  • Step 405 In response to determining that the interface information or variable information of the component has changed, configure the version information of the dependent component as the changed version information of the target component.
  • the above execution subject determines that the interface information or variable information of the target component has changed, it will configure the version information of the dependent component as the changed version information of the target component. That is, when the interface information or variable information of the target component changes, the version information of the dependent component also needs to be changed to the changed version information of the target component. This enables configuring version information for dependent components when the component's interface information or variable information changes.
  • it also includes: in response to determining that the interface information or variable information of the target component has changed and the dependent component also depends on other components, configuring the version information of other components as the target The changed version information of the component.
  • the version information of other dependent components is also configured as the changed version of the target component. Version Information.
  • component L21 depends on component L31; component L23 depends on components L31, L32, and L33, and version 1.0.0 of L21 depends on version 1.0.0 of L31, and version 1.0.0 of L23 depends on versions of 1.0.0 of L31 and 1.0. Version 0 of L32, version 1.0.0 of L33. Then when the version of L31 is changed to 1.1.0 and the interface information of L31 changes, the version information of L31's dependent components L21 and L23 will be changed to version 1.1.0. At the same time, since dependent component L23 also depends on other components L32 and L33, the version information of component L32 and component L33 must also be changed to version 1.1.0.
  • Step 406 Based on the dependency relationship between the target component and the dependent component, save the changed version information of the target component and the configured version information of the dependent component into the component dependency table.
  • Step 406 is basically consistent with step 204 in the previous embodiment.
  • Step 407 Obtain the submission identification corresponding to the version information of each component.
  • the above-mentioned execution subject will obtain the submission identification corresponding to the version information of each component, where the submission identification includes a release version identification, an official version identification or a grayscale version identification. That is to say, each component with version information will have an identifier when submitted, and the above execution subject will obtain the submission identifier corresponding to each version information of each component.
  • the submission identifier can also be a branch identifier, such as master branch, release branch, fixed version branch (such as ver8.8), etc.
  • Step 408 Save the corresponding relationship between the version information of each component and the submission identifier into the component dependency table.
  • the execution subject saves the corresponding relationship between the version information of each component and the submission identification into the component dependency table. That is to say, the above execution subject will add a label indicating the identification information to the version information of each component, and save the corresponding relationship between the version information and the submission identification in the component dependency table. This accurately records the correspondence between version information and submission identifiers.
  • the above information generation method also includes: determining the component to be operated and the version information of the component to be operated; obtaining each version information of the dependent component corresponding to the version information of the component to be operated; The target version information is determined in the version information, and the target version information is the latest updated version information; the component to be operated and the dependent components of the target version information are output.
  • the dependent components of the component when the user selects a component for use, the dependent components of the component also need to be obtained at the same time.
  • the above execution subject After determining the component to be operated (that is, the component selected by the user), the above execution subject also obtains the version information of the component to be operated. Then, obtain each version information of the dependent component corresponding to the version information, and determine the latest updated version information from each version information, that is, the highest version of the version information, and use the dependent component of this version information as the component to be operated. Ultimately dependent components. Finally, the components to be operated and the final dependent components are output. Under normal circumstances, by default, the most recently updated version or the highest version of a component is more stable and has better performance. Therefore, outputting the most recently updated version information of the component can improve the user's research and development efficiency.
  • component L23 with version information 1.0.1 As an example, if the user selects component L23 with version information 1.0.1, component L23 with version 1.0.1 depends on component L31, and the version information of L31 is 1.0.0, 1.0.1 and 1.0.2, then version 1.0.2 will be L31 is used as the final dependent component, that is, the component L23 of version 1.0.1 and the component L31 of version 1.0.2 are output.
  • the official version when outputting the official version, it can be output one by one based on the clear correspondence between the version information recorded in the component dependency table. That is to say, all dependent components of the component and each version information of the dependent components are output.
  • the information generation method in this embodiment records the dependencies between components and associates version information.
  • the change process of component version information A relationship is also established, and the recorded version change information is automatically updated through the dependencies between components, so that when a component is output, the component dependency chain that ultimately needs to be output can be output based on the dependencies recorded in the component dependency table, thereby improving Efficiency in updating and maintaining component dependencies.
  • the present disclosure provides an embodiment of an information generation device.
  • the device embodiment corresponds to the method embodiment shown in Figure 2.
  • the device can specifically Used in various electronic equipment.
  • the information generation device 500 of this embodiment includes: a first determination module 501 , a second determination module 502 , a configuration module 503 and a first saving module 504 .
  • the first determination module 501 is configured to determine that the component is a target component in response to a change in the version information of the component
  • the second determination module 502 is configured to determine, based on the component dependency table, that the component depends on the target component.
  • the configuration module 503 is configured to configure version information for the dependent components based on preset version configuration rules
  • the first saving module 504 is The configuration is based on the dependency relationship between the target component and the dependent component, and saves the changed version information of the target component and the configured version information of the dependent component into the component dependency table.
  • the specific processing of the first determination module 501, the second determination module 502, the configuration module 503 and the first saving module 504 and the technical effects they bring can be referred to Figure 2 respectively.
  • the relevant description of steps 201-204 in the embodiment will not be repeated here.
  • the configuration module includes: a selection submodule configured to select the dependent component from the component dependency table in response to determining that neither the interface information nor the variable information of the target component has changed.
  • Historical version information configured to use historical version information as configured version information of dependent components.
  • the configuration module also includes: a second determination sub-module configured to configure the version information of the dependent component as the target component in response to a change in the interface information or variable information of the determined component. The changed version information.
  • the configuration module also includes: a configuration submodule configured to respond to determining that the interface information or variable information of the target component changes and the dependent component also depends on other components.
  • the version information of other components is configured as the changed version information of the target component.
  • the above-mentioned information generation device 500 also includes: a first acquisition module configured to obtain the submission identification corresponding to the version information of each component.
  • the submission identification includes a release version identification and an official version identification. or grayscale version identification;
  • the second saving module is configured to save the corresponding relationship between the version information of each component and the submission identification into the component dependency table.
  • the above-mentioned information generation device 500 further includes: a third determination module configured to determine the component to be operated and the version information of the component to be operated; a second acquisition module configured to obtain Each version information of the dependent component corresponding to the version information of the component to be operated; the fourth determination module is configured to determine the target version information from each version information, and the target version information is the latest updated version information; the output module is configured It becomes a dependent component that outputs the component to be operated and the target version information.
  • the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.
  • FIG. 6 shows a schematic block diagram of an example electronic device 600 that may be used to implement embodiments of the present disclosure.
  • Electronic devices are intended to refer to various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers.
  • Electronic devices may also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smart phones, wearable devices, and other similar computing devices.
  • the components shown herein, their connections and relationships, and their functions are examples only and are not intended to limit implementations of the disclosure described and/or claimed herein.
  • the device 600 includes a computing unit 601 that can execute according to a computer program stored in a read-only memory (ROM) 602 or loaded from a storage unit 608 into a random access memory (RAM) 603 Various appropriate actions and treatments. In the RAM 603, various programs and data required for the operation of the device 600 can also be stored.
  • Computing unit 601, ROM 602 and RAM 603 are connected to each other via bus 604.
  • An input/output (I/O) interface 605 is also connected to bus 604.
  • I/O interface 605 Multiple components in device 600 are connected to I/O interface 605, including: input unit 606, such as keyboard, mouse, etc.; output unit 607, such as various types of displays, speakers, etc.; storage unit 608, such as magnetic disk, optical disk, etc. ; and communication unit 609, such as a network card, modem, wireless communication transceiver, etc.
  • the communication unit 609 allows the device 600 to exchange information/data with other devices through computer networks such as the Internet and/or various telecommunications networks.
  • Computing unit 601 may be a variety of general and/or special purpose processing components having processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processing processor (DSP), and any appropriate processor, controller, microcontroller, etc.
  • the computing unit 601 performs the various methods and processes described above, such as the information generation method.
  • the information generation method may be implemented as a computer software program tangibly embodied in a machine-readable medium, such as storage unit 608.
  • part or all of the computer program may be loaded and/or installed onto device 600 via ROM 602 and/or communication unit 609.
  • the computer program When the computer program is loaded into RAM 603 and executed by computing unit 601, one or more steps of the information generation method described above may be performed.
  • the computing unit 601 may be configured to perform the information generation method in any other suitable manner (eg, by means of firmware).
  • Various implementations of the systems and techniques described above may be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on a chip implemented in a system (SOC), load programmable logic device (CPLD), computer hardware, firmware, software, and/or a combination thereof.
  • FPGAs field programmable gate arrays
  • ASICs application specific integrated circuits
  • ASSPs application specific standard products
  • SOC system
  • CPLD load programmable logic device
  • computer hardware firmware, software, and/or a combination thereof.
  • These various embodiments may include implementation in one or more computer programs executable and/or interpreted on a programmable system including at least one programmable processor, the programmable processor
  • the processor which may be a special purpose or general purpose programmable processor, may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
  • An output device may be a special purpose or general purpose programmable processor, may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
  • An output device may be a special purpose or general purpose programmable processor, may receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
  • Program code for implementing the methods of the present disclosure may be written in any combination of one or more programming languages. These program codes may be provided to a processor or controller of a general-purpose computer, special-purpose computer, or other programmable data processing device, such that the program codes, when executed by the processor or controller, cause the functions specified in the flowcharts and/or block diagrams/ The operation is implemented.
  • the program code may execute entirely on the machine, partly on the machine, as a stand-alone software package, partly on the machine and partly on a remote machine or entirely on the remote machine or server.
  • a machine-readable medium may be a tangible medium that may contain or store a program for use by or in connection with an instruction execution system, apparatus, or device.
  • the machine-readable medium may be a machine-readable signal medium or a machine-readable storage medium.
  • Machine-readable media may include, but are not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices or devices, or any suitable combination of the foregoing.
  • machine-readable storage media would include one or more wire-based electrical connections, laptop disks, hard drives, random access memory (RAM), read only memory (ROM), erasable programmable read only memory (EPROM or flash memory), optical fiber, portable compact disk read-only memory (CD-ROM), optical storage device, magnetic storage device, or any suitable combination of the above.
  • RAM random access memory
  • ROM read only memory
  • EPROM or flash memory erasable programmable read only memory
  • CD-ROM portable compact disk read-only memory
  • magnetic storage device or any suitable combination of the above.
  • the systems and techniques described herein may be implemented on a computer having a display device (eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user ); and a keyboard and pointing device (eg, a mouse or a trackball) through which a user can provide input to the computer.
  • a display device eg, a CRT (cathode ray tube) or LCD (liquid crystal display) monitor
  • a keyboard and pointing device eg, a mouse or a trackball
  • Other kinds of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and may be provided in any form, including Acoustic input, voice input or tactile input) to receive input from the user.
  • the systems and techniques described herein may be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., A user's computer having a graphical user interface or web browser through which the user can interact with implementations of the systems and technologies described herein), or including such backend components, middleware components, or any combination of front-end components in a computing system.
  • the components of the system may be interconnected by any form or medium of digital data communication (eg, a communications network). Examples of communication networks include: local area network (LAN), wide area network (WAN), and the Internet.
  • Cloud computing refers to a flexible and scalable shared physical or virtual resource pool through network access. Resources can include servers, operating systems, networks, software, applications or storage devices, etc., and can be provided on-demand or automatically. A technical system that deploys and manages resources in the form of services. Through cloud computing technology, it can provide efficient and powerful data processing capabilities for artificial intelligence, blockchain and other technology applications and model training.
  • Computer systems may include clients and servers.
  • Clients and servers are generally remote from each other and typically interact over a communications network.
  • the relationship of client and server is created by computer programs running on corresponding computers and having a client-server relationship with each other.
  • the server can be a cloud server, a distributed system server, or a server combined with a blockchain.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本公开提供了一种信息生成方法、装置、设备以及存储介质,涉及组件管理技术领域。该方法包括:响应于确定组件的版本信息发生变更,将该组件确定为目标组件;基于组件依赖关系表,确定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系;基于预设的版本配置规则,为依赖组件配置版本信息;基于目标组件和依赖组件之间的关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。本公开提供的信息生成方法基于预设的配置规则自动为依赖组件配置版本信息,提升了组件的版本信息的维护效率,进而提升了研发效率。

Description

信息生成方法、装置、设备以及存储介质
本专利申请要求于2022年05月18日提交的、申请号为202210544149.0、发明名称为“信息生成方法、装置、设备以及存储介质”的中国专利申请的优先权,该申请的全文以引用的方式并入本申请中。
技术领域
本公开涉及计算机技术领域,具体涉及组件管理技术领域,尤其涉及信息生成方法、装置、设备以及存储介质。
背景技术
在软件开发中,为了更好的复用,通常会将不同功能的代码以独立组件的方式对外提供,其他软件通过复用这些独立的组件,大大提高了软件开发的效率。
发明内容
本公开提供了一种信息生成方法、装置、设备以及存储介质。
根据本公开的第一方面,提供了一种信息生成方法,包括:响应于确定组件的版本信息发生变更,将该组件确定为目标组件;基于组件依赖关系表,确定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系;基于预设的版本配置规则,为依赖组件配置版本信息;基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。
根据本公开的第二方面,提供了一种信息生成装置,包括:第一确定模块,被配置成响应于确定组件的版本信息发生变更,将该组件确定为目标组件;第二确定模块,被配置成基于组件依赖关系表,确 定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系;配置模块,被配置成基于预设的版本配置规则,为依赖组件配置版本信息;第一保存模块,被配置成基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。
根据本公开的第三方面,提供了一种电子设备,包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行如第一方面中任一实现方式描述的方法。
根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行如第一方面中任一实现方式描述的方法。
根据本公开的第五方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现如第一方面中任一实现方式描述的方法。
应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本公开的限定。其中:
图1是本公开可以应用于其中的示例性系统架构图;
图2是根据本公开的信息生成方法的一个实施例的流程图;
图3是根据本公开的信息生成方法的一个应用场景的示意图;
图4是根据本公开的信息生成方法的另一个实施例的流程图;
图5是根据本公开的信息生成装置的一个实施例的结构示意图;
图6是用来实现本公开实施例的信息生成方法的电子设备的框图。
具体实施方式
以下结合附图对本公开的示范性实施例做出说明,其中包括本公 开实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本公开的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
图1示出了可以应用本公开的信息生成方法或信息生成装置的实施例的示例性系统架构100。
如图1所示,系统架构100可以包括终端设备101、102、103,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送信息等。终端设备101、102、103上可以安装有各种客户端应用。
终端设备101、102、103可以是硬件,也可以是软件。当终端设备101、102、103为硬件时,可以是各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。当终端设备101、102、103为软件时,可以安装在上述电子设备中。其可以实现成多个软件或软件模块,也可以实现成单个软件或软件模块。在此不做具体限定。
服务器105可以提供各种服务。例如,服务器105可以对从终端设备101、102、103获取的各个组件以及各个组件的版本信息进行分析和处理,并生成处理结果(例如将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中)。
需要说明的是,服务器105可以是硬件,也可以是软件。当服务器105为硬件时,可以实现成多个服务器组成的分布式服务器集群,也可以实现成单个服务器。当服务器105为软件时,可以实现成多个软件或软件模块(例如用来提供分布式服务),也可以实现成单个软 件或软件模块。在此不做具体限定。
需要说明的是,本公开实施例所提供的信息生成方法一般由服务器105执行,相应地,信息生成装置一般设置于服务器105中。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
继续参考图2,其示出了根据本公开的信息生成方法的一个实施例的流程200。该信息生成方法包括以下步骤:
步骤201,响应于确定组件的版本信息发生变更,将该组件确定为目标组件。
在本实施例中,信息生成方法的执行主体(例如图1所示的服务器105)会在确定组件的版本信息发生变更的情况下,将版本信息发生变更的组件确定为目标组件。众所周知,一款APP(application,应用程序)包括多个模块或组件,在日常的研发过程中,而模块或组件的变动则会引起相关的其他模块或组件的变动,如果维护不好,则会影响APP的功能和稳定。所以,本实施例会对组件之间的依赖关系进行维护,从而自动对组件之间的版本信息进行更新。
在本实施例中,上述执行主体会获取研发人员提交的代码,根据提交的代码记录各个组件之间的依赖关系,以及记录各个组件的版本信息关系,从而得到组件依赖关系表。
若上述执行主体检测到各个组件中的某个组件的版本信息发生变更(也即研发人员对某一个组件进行更新,从而提交新版本的组件),则上述执行主体会将版本信息发生变更的组件确定为目标组件。
步骤202,基于组件依赖关系表,确定出依赖于目标组件的依赖组件。
在本实施例中,上述执行主体会基于组件依赖关系表,确定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系。由于上述执行主体已经预先构建了存储有组件之间的依赖关系的组件依赖关系表,所以在确定目标组件后,上述执行主体会从组件依赖关系表中确定出依赖于目标组件的组件,将其记为目标组 件的依赖组件。
作为示例,例如组件依赖关系表中记录了“组件L11依赖组件L21和L23”,那么在确定组件L21的版本信息发生变更时,也即目标组件为组件L21,那么此时根据组件依赖关系表可以确定依赖于目标组件L21的依赖组件为组件L11。
步骤203,基于预设的版本配置规则,为依赖组件配置版本信息。
在本实施例中,在确定出目标组件的依赖组件后,上述执行主体会基于预设的配置规则,为依赖组件配置版本信息。由于组件的版本信息之间存在依赖关系,组件之间也存在接口的调用或变量的依赖等,所以,当目标组件的公开的接口或者变量有变化时,依赖组件也需要相应进行修改,否则的话,调用时就会出现错误。
在本实施例中,会基于目标组件的接口或变量的变化情况,来相应的为依赖组件配置版本信息。例如,假如目标组件的接口或变量没变,那么依赖组件的版本信息不变,则还为未变更版本信息的目标组件所依赖的版本信息,该版本信息可以从组件依赖关系表中获取;假如目标组件的接口或变量已发生变化,那么会将依赖组件的版本信息配置为目标组件变更后的版本信息。
步骤204,基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。
在本实施例中,上述执行主体会基于组件依赖关系表中目标组件和依赖组件之间的依赖关系,来将目标组件的变更后的版本信息和依赖组件的配置后的版本信息进行保存,也即在组件依赖关系表中添加目标组件的变更后的版本信息和依赖组件的配置后的版本信息的对应关系。
继续参考图3,其示出了根据本公开的信息生成方法的一个应用场景的示意图。在该应用场景中,首先,执行主体301在确定某个组件的版本信息发生变更时,会将版本信息发生变更的组件确定为目标组件302。然后,执行主体301会基于预先构建的存储有组件之间的依赖关系的组件依赖关系表,来确定依赖于目标组件302的依赖组件。 之后,执行主体301会基于预设的版本配置规则,为依赖组件配置版本信息,例如基于目标组件的接口或变量的变化情况,来为依赖组件配置版本信息。最后,执行主体301会基于组件依赖关系表中目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息进行保存,保存至组件依赖关系表中。
本公开实施例提供的信息生成方法,首先响应于确定组件的版本信息发生变更,将该组件确定为目标组件;然后基于组件依赖关系表,确定出依赖于目标组件的依赖组件;之后基于预设的版本配置规则,为依赖组件配置版本信息;最后基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。本实施例中的信息生成方法,该方法通过记录组件之间的依赖关系,并关联版本信息,从而基于预设的配置规则自动为依赖组件配置版本信息,提升了组件的版本信息的维护效率,进而提升了研发效率。
本公开的技术方案中,所涉及的用户个人信息的收集、存储、使用、加工、传输、提供和公开等处理,均符合相关法律法规的规定,且不违背公序良俗。
继续参考图4,图4示出了根据本公开的信息生成方法的另一个实施例的流程400。该信息生成方法包括以下步骤:
步骤401,响应于确定组件的版本信息发生变更,将该组件确定为目标组件。
在本实施例中,信息生成方法的执行主体(例如图1所示的服务器105)可以在确定组件的版本信息发生变更时,将该组件确定为目标组件。步骤401与前述实施例的步骤201基本一致,具体实现方式可以参考前述对步骤201的描述,此处不再赘述。
需要说明的是,一个APP中可以包含多个组件,假设包含的组件数目为m(m为正整数),将目标组件表示为x,x的依赖组件的个数为n(n为正整数),那么m大于n,且x属于m中的一个。
步骤402,基于组件依赖关系表,确定出依赖于目标组件的依赖 组件。
在本实施例中,信息生成方法的执行主体(例如图1所示的服务器105)可以基于组件依赖关系表,确定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系。步骤402与前述实施例的步骤202基本一致,具体实现方式可以参考前述对步骤202的描述,此处不再赘述。
之后,上述执行主体会判断目标组件的接口信息和变量信息是否发生变化,在目标组件的接口信息和变量信息均未发生变化的情况下,执行步骤403-404,在目标组件的接口信息或变量信息发生变化的情况下,执行步骤405。
步骤403,响应于确定目标组件的接口信息和变量信息均未发生变化,从组件依赖关系表中选取依赖组件的历史版本信息。
在本实施例中,上述执行主体会确定目标组件的接口信息和变量信息有没有发生变化,并在目标组件接口信息和变量信息均未发生变化的情况下,依赖组件的版本信息不变,上述执行主体会从组件依赖关系表中选取依赖组件的历史版本信息,历史版本信息即为最新一次更新的版本信息。
步骤404,将历史版本信息作为依赖组件的配置后的版本信息。
在本实施例中,上述执行主体会将获取的历史版本信息作为依赖组件的配置后的版本信息。从而实现了在目标组件的接口信息和变量信息均未发生变化的情况下,为依赖组件配置版本信息。
例如,假设组件L23依赖组件L33,且1.0.0版本的L23依赖1.0.0版本的L33。那么当L33的版本变更为1.1.0,但是L33的接口和变量均未变化,此时目标组件L33的依赖组件L23的版本信息无需变更,L23的版本信息还为其历史版本信息1.0.0。也即此时,1.0.0版本的L23依赖1.1.0版本的L33。
步骤405,响应于确定组件的接口信息或变量信息发生变化,将依赖组件的版本信息配置为目标组件的变更后的版本信息。
在本实施例中,上述执行主体在确定目标组件的接口信息或变量信息发生变化的情况下,会将依赖组件的版本信息配置为目标组件的变更 后的版本信息。也即在目标组件的接口信息或变量信息发生变化的情况下,依赖组件的版本信息也需要变更为目标组件变更后的版本信息。从而实现在组件的接口信息或变量信息发生变化时,为依赖组件配置版本信息。
例如,假设组件L23依赖组件L33,且1.0.0版本的L23依赖1.0.0版本的L33。那么当L33的版本变更为1.1.0,且L33的接口发生变化,此时L33的依赖组件L23的版本信息需变更,变更为L33的变更后的版本信息1.1.0。也即此时,1.1.0版本的L23依赖1.1.0版本的L33。
在本实施例的一些可选的实现方式中,还包括:响应于确定目标组件的接口信息或变量信息发生变化、且依赖组件还依赖于其他的组件,将其他的组件的版本信息配置为目标组件的变更后的版本信息。
在本实现方式中,在确定目标组件的接口信息或变量信息已发生变化、且依赖组件还依赖于其他的组件,此时将所依赖的其他组件的版本信息也配置为目标组件的变更后的版本信息。
例如,假设组件L21依赖组件L31;组件L23依赖组件L31、L32、L33,且1.0.0版本的L21依赖1.0.0版本的L31、1.0.0版本的L23依赖1.0.0版本的L31、1.0.0版本的L32、1.0.0版本的L33。那么当L31的版本变更为1.1.0,且L31的接口信息发生变化,此时L31的依赖组件L21和L23的版本信息都要变更为1.1.0版本。同时,由于依赖组件L23还依赖于其他的组件L32和L33,所以,组件L32和组件L33的版本信息也要变更为1.1.0版本。
也即,在本实施例中,一个组件的版本信息发生变更,依赖组件所依赖的其他组件也需要同时进行变更。
步骤406,基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。
步骤406与前述实施例的步骤204基本一致,具体实现方式可以参考前述对步骤204的描述,此处不再赘述。
步骤407,获取各个组件的版本信息对应的提交标识。
在本实施例中,上述执行主体会获取各个组件的版本信息对应的提 交标识,其中,提交标识包括发布版标识、正式版标识或灰度版标识。也即每个版本信息的组件在提交时都会有一个标识,上述执行主体会获取各个组件的各个版本信息对应的提交标识。可选地,提交标识还可以为分支标识,例如master分支、release分支、固定版本分支(如ver8.8)等等。
步骤408,将各个组件的版本信息与提交标识的对应关系保存至组件依赖关系表中。
在本实施例中,上述执行主体会将各个组件的版本信息与提交标识的对应关系保存至组件依赖关系表中。也即上述执行主体会为每个组件的版本信息加上用于指示标识信息的标签,并将版本信息与提交标识的对应关系保存至组件依赖关系表中。从而准确记录版本信息与提交标识之间的对应关系。
在本实施例的一些可选实现方式中,上述信息生成方法还包括:确定待操作组件和待操作组件的版本信息;获取与待操作组件的版本信息对应的依赖组件的各个版本信息;从各个版本信息中确定目标版本信息,目标版本信息为最近一次更新的版本信息;输出待操作组件和目标版本信息的依赖组件。
在本实现方式中,在用户选择某个组件进行使用时,该组件的依赖组件也需要同时获取。上述执行主体在确定待操作组件(即用户选择的组件)后,还会获取该待操作组件的版本信息。然后,获取与该版本信息对应的依赖组件的各个版本信息,并从各个版本信息中确定最近一次更新的版本信息,也即最高版本的版本信息,将该版本信息的依赖组件作为待操作组件的最终依赖组件。最后输出待操作组件和最终的依赖组件。一般情况下,默认最近一次更新的版本或最高版本的组件更稳定,性能更佳,所以,将最近一次更新的版本信息的组件进行输出,可以提升用户的研发效率。
作为示例,用户选择版本信息为1.0.1的组件L23,1.0.1版本的组件L23依赖组件L31,L31的版本信息为1.0.0、1.0.1和1.0.2,那么会将1.0.2版本的L31作为最终的依赖组件,也即输出1.0.1版本的组件L23和1.0.2版本的组件L31。
此外,在输出正式版时,可根据组件依赖关系表中记录的明确的版本信息之间的对应关系,进行一一输出。也即将组件的所有依赖组件、以及依赖组件的各个版本信息进行输出。
从图4中可以看出,与图2对应的实施例相比,本实施例中的信息生成方法,该方法对组件间的依赖进行记录,并关联版本信息,同时对于组件版本信息的变更过程也建立了关系,通过组件之间的依赖关系自动更新记录版本变更信息,从而当组件输出时,可根据组件依赖关系表中记录的依赖关系,输出最终需要输出的组件依赖关系链,从而提升了组件依赖关系的更新及维护的效率。
进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种信息生成装置的一个实施例,该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图5所示,本实施例的信息生成装置500包括:第一确定模块501、第二确定模块502、配置模块503和第一保存模块504。其中,第一确定模块501,被配置成响应于确定组件的版本信息发生变更,将该组件确定为目标组件;第二确定模块502,被配置成基于组件依赖关系表,确定出依赖于目标组件的依赖组件,其中,组件依赖关系表中存储有组件之间的依赖关系;配置模块503,被配置成基于预设的版本配置规则,为依赖组件配置版本信息;第一保存模块504,,被配置成基于目标组件和依赖组件之间的依赖关系,将目标组件的变更后的版本信息和依赖组件的配置后的版本信息保存至组件依赖关系表中。
在本实施例中,信息生成装置500中:第一确定模块501、第二确定模块502、配置模块503和第一保存模块504的具体处理及其所带来的技术效果可分别参考图2对应实施例中的步骤201-204的相关说明,在此不再赘述。
在本实施例的一些可选的实现方式中,配置模块包括:选取子模块,被配置成响应于确定目标组件的接口信息和变量信息均未发生变 化,从组件依赖关系表中选取依赖组件的历史版本信息;第一确定子模块,被配置成将历史版本信息作为依赖组件的配置后的版本信息。
在本实施例的一些可选的实现方式中,配置模块还包括:第二确定子模块,被配置成响应于确定组件的接口信息或变量信息发生变化,将依赖组件的版本信息配置为目标组件的变更后的版本信息。
在本实施例的一些可选的实现方式中,配置模块还包括:配置子模块,被配置成响应于确定目标组件的接口信息或变量信息发生变化、且依赖组件还依赖于其他的组件,将其他的组件的版本信息配置为目标组件的变更后的版本信息。
在本实施例的一些可选的实现方式中,上述信息生成装置500还包括:第一获取模块,被配置成获取各个组件的版本信息对应的提交标识,提交标识包括发布版标识、正式版标识或灰度版标识;第二保存模块,被配置成将各个组件的版本信息与提交标识的对应关系保存至组件依赖关系表中。
在本实施例的一些可选的实现方式中,上述信息生成装置500还包括:第三确定模块,被配置成确定待操作组件和待操作组件的版本信息;第二获取模块,被配置成获取与待操作组件的版本信息对应的依赖组件的各个版本信息;第四确定模块,被配置成从各个版本信息中确定目标版本信息,目标版本信息为最近一次更新的版本信息;输出模块,被配置成输出待操作组件和目标版本信息的依赖组件。
根据本公开的实施例,本公开还提供了一种电子设备、一种可读存储介质和一种计算机程序产品。
图6示出了可以用来实施本公开的实施例的示例电子设备600的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者 要求的本公开的实现。
如图6所示,设备600包括计算单元601,其可以根据存储在只读存储器(ROM)602中的计算机程序或者从存储单元608加载到随机访问存储器(RAM)603中的计算机程序,来执行各种适当的动作和处理。在RAM 603中,还可存储设备600操作所需的各种程序和数据。计算单元601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
设备600中的多个部件连接至I/O接口605,包括:输入单元606,例如键盘、鼠标等;输出单元607,例如各种类型的显示器、扬声器等;存储单元608,例如磁盘、光盘等;以及通信单元609,例如网卡、调制解调器、无线通信收发机等。通信单元609允许设备600通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元601可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元601的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元601执行上文所描述的各个方法和处理,例如信息生成方法。例如,在一些实施例中,信息生成方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元608。在一些实施例中,计算机程序的部分或者全部可以经由ROM 602和/或通信单元609而被载入和/或安装到设备600上。当计算机程序加载到RAM 603并由计算单元601执行时,可以执行上文描述的信息生成方法的一个或多个步骤。备选地,在其他实施例中,计算单元601可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行信息生成方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算 机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
云计算(cloud computer),指的是通过网络接入弹性可扩展的共享物理或虚拟资源池,资源可以包括服务器、操作系统、网络、软件、应用或存储设备等,并可以以按需、自服务的方式对资源进行部署和管理的技术体系。通过云计算技术,可以为人工智能、区块链等技术应用、模型训练提供高效强大的数据处理能力。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。服务器可以是云服务器,也可以为分布式系统的服务器,或者是结合了区块链的服务器。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发公开中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本公开公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本公开保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本公开的精神和原则之内所作的修改、等同替换和改进等,均应包含在本公开保护范围之内。

Claims (15)

  1. 一种信息生成方法,包括:
    响应于确定组件的版本信息发生变更,将该组件确定为目标组件;
    基于组件依赖关系表,确定出依赖于所述目标组件的依赖组件,其中,所述组件依赖关系表中存储有组件之间的依赖关系;
    基于预设的版本配置规则,为所述依赖组件配置版本信息;
    基于所述目标组件和所述依赖组件之间的依赖关系,将所述目标组件的变更后的版本信息和所述依赖组件的配置后的版本信息保存至所述组件依赖关系表中。
  2. 根据权利要求1所述的方法,其中,所述基于预设的版本配置规则,为所述依赖组件配置版本信息,包括:
    响应于确定所述目标组件的接口信息和变量信息均未发生变化,从所述组件依赖关系表中选取所述依赖组件的历史版本信息;
    将所述历史版本信息作为所述依赖组件的配置后的版本信息。
  3. 根据权利要求1-2任一项所述的方法,其中,所述基于预设的版本配置规则,为所述依赖组件配置版本信息,包括:
    响应于确定所述组件的接口信息或变量信息发生变化,将所述依赖组件的版本信息配置为所述目标组件的变更后的版本信息。
  4. 根据权利要求1-3任一项所述的方法,其中,所述基于预设的版本配置规则,为所述依赖组件配置版本信息,包括:
    响应于确定所述目标组件的接口信息或变量信息发生变化、且所述依赖组件还依赖于其他的组件,将所述其他的组件的版本信息配置为所述目标组件的变更后的版本信息。
  5. 根据权利要求1-4任一项所述的方法,还包括:
    获取所述各个组件的版本信息对应的提交标识,所述提交标识包括发布版标识、正式版标识或灰度版标识;
    将所述各个组件的版本信息与所述提交标识的对应关系保存至所述组件依赖关系表中。
  6. 根据权利要求1-5任一项所述的方法,还包括:
    确定待操作组件和所述待操作组件的版本信息;
    获取与所述待操作组件的版本信息对应的依赖组件的各个版本信息;
    从所述各个版本信息中确定目标版本信息,所述目标版本信息为最近一次更新的版本信息;
    输出所述待操作组件和所述目标版本信息的依赖组件。
  7. 一种信息生成装置,包括:
    第一确定模块,被配置成响应于确定组件的版本信息发生变更,将该组件确定为目标组件;
    第二确定模块,被配置成基于组件依赖关系表,确定出依赖于所述目标组件的依赖组件,其中,所述组件依赖关系表中存储有组件之间的依赖关系;
    配置模块,被配置成基于预设的版本配置规则,为所述依赖组件配置版本信息;
    第一保存模块,被配置成基于所述目标组件和所述依赖组件之间的依赖关系,将所述目标组件的变更后的版本信息和所述依赖组件的配置后的版本信息保存至所述组件依赖关系表中。
  8. 根据权利要求7所述的装置,其中,所述配置模块包括:
    选取子模块,被配置成响应于确定所述目标组件的接口信息和变量信息均未发生变化,从所述组件依赖关系表中选取所述依赖组件的历史版本信息;
    第一确定子模块,被配置成将所述历史版本信息作为所述依赖组件的配置后的版本信息。
  9. 根据权利要求7-8任一项所述的装置,其中,所述配置模块还包括:
    第二确定子模块,被配置成响应于确定所述组件的接口信息或变量信息发生变化,将所述依赖组件的版本信息配置为所述目标组件的变更后的版本信息。
  10. 根据权利要求7-9任一项所述的装置,其中,所述配置模块还包括:
    配置子模块,被配置成响应于确定所述目标组件的接口信息或变量信息发生变化、且所述依赖组件还依赖于其他的组件,将所述其他的组件的版本信息配置为所述目标组件的变更后的版本信息。
  11. 根据权利要求7-10任一项所述的装置,还包括:
    第一获取模块,被配置成获取所述各个组件的版本信息对应的提交标识,所述提交标识包括发布版标识、正式版标识或灰度版标识;
    第二保存模块,被配置成将所述各个组件的版本信息与所述提交标识的对应关系保存至所述组件依赖关系表中。
  12. 根据权利要求7-11任一项所述的装置,还包括:
    第三确定模块,被配置成确定待操作组件和所述待操作组件的版本信息;
    第二获取模块,被配置成获取与所述待操作组件的版本信息对应的依赖组件的各个版本信息;
    第四确定模块,被配置成从所述各个版本信息中确定目标版本信息,所述目标版本信息为最近一次更新的版本信息;
    输出模块,被配置成输出所述待操作组件和所述目标版本信息的依赖组件。
  13. 一种电子设备,包括:
    至少一个处理器;以及
    与所述至少一个处理器通信连接的存储器;其中,
    所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-6中任一项所述的方法。
  14. 一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行权利要求1-6中任一项所述的方法。
  15. 一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-6中任一项所述的方法。
PCT/CN2022/130514 2022-05-18 2022-11-08 信息生成方法、装置、设备以及存储介质 WO2023221416A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210544149.0A CN114816393B (zh) 2022-05-18 2022-05-18 信息生成方法、装置、设备以及存储介质
CN202210544149.0 2022-05-18

Publications (1)

Publication Number Publication Date
WO2023221416A1 true WO2023221416A1 (zh) 2023-11-23

Family

ID=82515936

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/130514 WO2023221416A1 (zh) 2022-05-18 2022-11-08 信息生成方法、装置、设备以及存储介质

Country Status (2)

Country Link
CN (1) CN114816393B (zh)
WO (1) WO2023221416A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114816393B (zh) * 2022-05-18 2023-12-19 北京百度网讯科技有限公司 信息生成方法、装置、设备以及存储介质
CN117667080A (zh) * 2023-12-15 2024-03-08 北京安普诺信息技术有限公司 一种sca组件依赖信息的确定方法、装置、设备及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150227363A1 (en) * 2014-02-13 2015-08-13 Linkedln Corporation Systems and methods for software dependency management
CN110704062A (zh) * 2019-09-27 2020-01-17 天津五八到家科技有限公司 依赖管理方法、数据获取方法、装置及设备
CN110990051A (zh) * 2019-11-27 2020-04-10 锐捷网络股份有限公司 软件包依赖关系的维护方法、装置、介质和设备
CN114217848A (zh) * 2021-12-29 2022-03-22 北京百度网讯科技有限公司 依赖关系处理方法、装置、电子设备及计算机存储介质
CN114816393A (zh) * 2022-05-18 2022-07-29 北京百度网讯科技有限公司 信息生成方法、装置、设备以及存储介质

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100082646A1 (en) * 2008-09-26 2010-04-01 Microsoft Corporation Tracking constraints and dependencies across mapping layers
JP5790222B2 (ja) * 2011-07-12 2015-10-07 株式会社リコー 通信装置、アップデート方法およびアップデートプログラム
CN106293763B (zh) * 2016-08-19 2019-10-22 广州品唯软件有限公司 应用组件版本的管理方法及装置
CN109491669B (zh) * 2018-12-29 2023-02-24 奇安信科技集团股份有限公司 数据的部署安装方法、设备、系统和介质
CN112256247B (zh) * 2020-10-09 2023-07-28 北京字跳网络技术有限公司 模块组件的依赖处理方法、装置、计算机设备及存储介质
CN113094041A (zh) * 2021-04-08 2021-07-09 北京自如信息科技有限公司 一种应用程序的组件管理方法、装置及计算机设备
CN114003269A (zh) * 2021-10-22 2022-02-01 挂号网(杭州)科技有限公司 组件处理方法、装置、电子设备及存储介质
CN114003312A (zh) * 2021-10-29 2022-02-01 广东智联蔚来科技有限公司 大数据服务组件管理方法、计算机装置及存储介质
CN114416430A (zh) * 2022-01-26 2022-04-29 上海电气风电集团股份有限公司 软件版本的管理方法、系统、设备及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150227363A1 (en) * 2014-02-13 2015-08-13 Linkedln Corporation Systems and methods for software dependency management
CN110704062A (zh) * 2019-09-27 2020-01-17 天津五八到家科技有限公司 依赖管理方法、数据获取方法、装置及设备
CN110990051A (zh) * 2019-11-27 2020-04-10 锐捷网络股份有限公司 软件包依赖关系的维护方法、装置、介质和设备
CN114217848A (zh) * 2021-12-29 2022-03-22 北京百度网讯科技有限公司 依赖关系处理方法、装置、电子设备及计算机存储介质
CN114816393A (zh) * 2022-05-18 2022-07-29 北京百度网讯科技有限公司 信息生成方法、装置、设备以及存储介质

Also Published As

Publication number Publication date
CN114816393B (zh) 2023-12-19
CN114816393A (zh) 2022-07-29

Similar Documents

Publication Publication Date Title
WO2023221416A1 (zh) 信息生成方法、装置、设备以及存储介质
EP3828719A2 (en) Method and apparatus for generating model for representing heterogeneous graph node, electronic device, storage medium, and computer program product
CN113342345A (zh) 深度学习框架的算子融合方法、装置
WO2021023149A1 (zh) 一种动态返回报文的方法和装置
EP3822812A1 (en) Method, apparatus and device for recognizing word slot, and storage medium
CN111666293A (zh) 数据库访问方法和装置
WO2018177032A1 (zh) 处理响应数据的方法、设备、客户端设备和电子设备
KR20220151585A (ko) 업무 데이터 처리 방법, 장치, 전자 기기, 저장 매체 및 컴퓨터 프로그램
EP4060496A2 (en) Method, apparatus, device and storage medium for running inference service platform
WO2023142399A1 (zh) 信息搜索方法、装置、电子设备
CN110109983B (zh) 一种操作Redis数据库的方法和装置
US11651221B2 (en) Method, device, and computer program product for deep learning
US20240053991A1 (en) Method and Apparatus for Generating Dependence Graph, Device, Storage Medium and Program Product
KR102583532B1 (ko) 스케줄링 방법, 장치, 기기, 기록 매체 및 컴퓨터 프로그램
WO2023169193A1 (zh) 用于生成智能合约的方法和装置
US20230146596A1 (en) Method and Apparatus for Automatically Downloading Map Tile, Device and Storage Medium
WO2023103432A1 (zh) 代码文件编辑方法、装置、电子设备以及存储介质
US20220293085A1 (en) Method for text to speech, electronic device and storage medium
CN114880020A (zh) 软件开发工具包管理方法、相关装置及计算机程序产品
CN112988778A (zh) 一种处理数据库查询脚本的方法和装置
CN112527290A (zh) 基于生物特征信息搭建页面的方法和装置
CN112015468B (zh) 一种接口文档处理方法、装置、电子设备以及存储介质
US20230206756A1 (en) Method and system of controlling traffic lighting apparatus, electronic device and storage medium
CN110866002A (zh) 分表数据处理的方法和装置
CN115563183B (zh) 查询方法、装置及程序产品

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22942437

Country of ref document: EP

Kind code of ref document: A1