WO2020233058A1 - 代码下载的方法、装置、电子设备及计算机存储介质 - Google Patents

代码下载的方法、装置、电子设备及计算机存储介质 Download PDF

Info

Publication number
WO2020233058A1
WO2020233058A1 PCT/CN2019/120963 CN2019120963W WO2020233058A1 WO 2020233058 A1 WO2020233058 A1 WO 2020233058A1 CN 2019120963 W CN2019120963 W CN 2019120963W WO 2020233058 A1 WO2020233058 A1 WO 2020233058A1
Authority
WO
WIPO (PCT)
Prior art keywords
code
target module
download
module
version
Prior art date
Application number
PCT/CN2019/120963
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 WO2020233058A1 publication Critical patent/WO2020233058A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 

Definitions

  • This application relates to the field of computers, in particular to methods, devices, electronic equipment and computer storage media for code download.
  • the code version management tool is a content management tool that can store the content information of the project on the version management server, which is convenient for project team personnel to access, query and modify.
  • GIT code version management tools Use current code version management tools, such as GIT code version management tools.
  • GIT code version management tools When performing platform upgrades or other code merging scenarios, if you compress all the code into a Zip package for downloading and updating the code, you cannot submit directly after modifying the code. If you use all distributed version control system (Georgia Institute of Technology, GIT) management modules to download the update code, when the project is large, the update code will be very long, waste time and take up more local disk space.
  • GIT distributed version control system
  • This application provides code download methods, devices, electronic equipment and computer storage media. Used to solve the problem of slow code download speed from code version management tool and large local disk space occupation.
  • a code download method includes the following steps:
  • the target module in the download version mode and the non-target module in the pure directory mode wherein the download file obtained by downloading the target module in the version mode contains the code file of the target module and the version control information of the target module .
  • a code downloading device in a second aspect, includes:
  • a receiving unit configured to receive a code download request, wherein the code download request carries an identifier of the target module to be downloaded;
  • the determining unit is configured to determine modules other than the target module in the module data table as non-target modules according to the identifier of the target module, wherein the module data table stores the module identifier and the module The mapping relationship between;
  • a conversion unit configured to perform mode conversion on the non-target module to obtain a non-target module in a pure directory mode, wherein the download file obtained by downloading the non-target module in the pure directory mode only contains the non-target module Code;
  • a downloading unit configured to download the target module in the version mode and the non-target module in the pure directory mode, wherein the download file obtained by downloading the target module in the version mode contains the code and Version control information of the target module.
  • an electronic device including a processor, an input device, an output device, and a memory, the processor, input device, output device, and memory are connected to each other, wherein the memory is used to store a computer program,
  • the computer program includes program instructions, and the processor is configured to invoke the program instructions to execute the method described in the first aspect above
  • a computer non-volatile readable storage medium stores a computer program.
  • the computer program includes program instructions that, when executed by a processor, cause the processing
  • the device executes the method of the first aspect described above.
  • the modules other than the target module in the module data table are determined to be non-
  • the target module performs mode conversion on the non-target module to obtain the non-target module in the pure directory mode, thereby downloading the target module in the version mode and the non-target module in the pure directory mode. Since the code of the target module and version control information are downloaded during the code download process, the non-target module only downloads the code, which greatly reduces the download file of the non-target module, thereby reducing the overall download time and reducing the need to place non-target modules Reserved disk space for the code. Moreover, for development users, code download scripts are used throughout the entire process to download. Users only need to select the modules that need to be downloaded to complete the download, which improves the work efficiency of development users.
  • Figure 1 is a schematic flowchart of a code download method provided by this application.
  • Figure 2 is a schematic diagram of the operating environment of a code download method provided by this application.
  • Fig. 3 is a schematic diagram of a floating window provided by the present application.
  • FIG. 4 is a schematic flowchart of a code download method provided by this application.
  • Fig. 5 is a schematic diagram of a floating window provided by the present application.
  • Fig. 6 is a schematic structural diagram of a code download device provided by the present application.
  • FIG. 7 is a schematic block diagram of the structure of an electronic device provided by the present application.
  • Figure 1 is a schematic flow chart of a code download method provided by the present application. The method is applied to an electronic device in which a code version management tool is installed and a code download script is configured. As can be seen from Figure 1, this The code download method provided by the application includes the following steps:
  • S101 Receive a code download request, where the code download request carries an identifier of the target module to be downloaded.
  • the method is applied to an electronic device in which a code version management tool is installed, a code download script is configured in the code version management tool, and before the receiving the code download request, the The method further includes: in the case that the name of the target module is selected in the interface of the code version tool with the left button or the right button of the user's mouse, the code download script displays a suspension on the display screen of the electronic device Window, wherein the floating window includes at least a code download button, a code upload button, the time of the last update of the target module, and the title of the update content; when the user triggers the code download button, the code download The script obtains the code download request triggered by the user, wherein the code download request includes the identification of the target module; the code download script forwards the code download request to the code version management tool; the receiving code download The request includes: the code version management tool receives the code download request. That is, the code download request is triggered by the user through the code download script, and then the code download script forwards the code
  • the code version management tool is equivalent to a code repository that can store and manage code, such as SVN (Subversion) tools, Git tools, etc.
  • the code version management tool can adjust the stored code according to the relevance of the project content Decomposed into different and independent version control modules. There is no necessary connection between each module and does not affect each other.
  • Figure 2 is a schematic diagram of the operating environment of the code download method provided by this application.
  • the user terminal A and the user terminal B jointly develop project 1
  • the user terminal A develops module A
  • the user terminal B develops module B
  • the user terminal C and client D jointly develop project two
  • client C develops module C
  • client D develops module D.
  • the use of code version management tools for project development can effectively avoid code conflicts and facilitate the coordinated development of multiple people when the project is relatively large and there are many developers involved. It should be understood that the above examples are only for illustration and cannot constitute a specific limitation.
  • the code download script is configured in the code version management tool.
  • the code download script parameters need to be configured in advance so that the version management tool can be based on A series of instructions sent by the code download script respond to operations.
  • the executable file git.exe can be configured in the execution path of the windows system, so that the code written in the script language can be executed in the windows environment, or to make the code download the script You can call git.exe to perform code download and submission operations through the code download script.
  • the Git commands required by the script may include a mode switching command and a code submission command, and both the mode switching command and the code submission command include the directory folder of the project component to which the target module belongs.
  • the code download script is configured with the environment variables of the code version management tool (such as Git). After the code download script is launched by the developer, git.exe can be automatically found and executed with Git's own running program The Git commands required by these scripts. Therefore, before using the code download script to perform code download or upload operations, the commands required by the script and corresponding to the version management tool, such as Git commands, SVN commands, etc., must be configured so that the code version management tool is receiving After these commands are received, the command can be responded to, that is, the code version management tool can switch the non-target module to a pure directory module after receiving the mode switching command.
  • the code version management tool such as Git
  • the floating window may include an instruction download button and an instruction upload button.
  • FIG. 3 is a schematic diagram of a floating window provided by the present application.
  • the floating window 300 only displays download and upload buttons. When the user right-clicks on the module name, or selects the module name with the left mouse button, that is The window 300 can be automatically displayed, click the download button to trigger a code download request, where the code download request includes the module identifier.
  • the floating window 300 may also include other buttons, such as a mode switch button, manual mode switch, so that the user can download multiple target modules, etc., which are not specifically limited in this application. It is understandable that the use of code download scripts for code download eliminates the tedious operation of developing users to repeatedly input instructions, greatly improves the user's operating efficiency, and improves the user's experience.
  • S102 According to the identifier of the target module, determine modules other than the target module in the module data table as non-target modules, wherein the module data table stores a mapping relationship between module identifiers and modules.
  • the development user selects the name of the target module to be downloaded, and clicks the download button in the floating window 300 shown in FIG. 3, for example, the code download script obtains the code download triggered by the development user Request, and the code download request contains the identifier of the target module selected by the developer user. Therefore, the module corresponding to the module identifier in the code download request can be determined as the target module for the next mode Switching operation. It is understandable that the entire module determination process, the mode switching process, and the module download process are all performed by the code download script, which simplifies the human operation process and improves the developer processing efficiency.
  • the code is stored in the server warehouse of the code version management tool.
  • the server warehouse of the code version management tool can be decomposed into different and independent modules according to the relevance of the project content. These modules can Form a development project. Therefore, when it is necessary to develop or modify on the basis of a certain module, the module containing version control information can be the target module, and other modules can be non-target modules. It should be understood that there may be one or more target modules, which are not specifically limited in this application.
  • S103 Perform mode conversion on the non-target module to obtain a non-target module in a pure directory mode, wherein the download file obtained by downloading the non-target module in the pure directory mode only contains the code file of the non-target module.
  • the mode conversion of the non-target module to obtain the non-target module in the pure directory mode includes: deleting the version control information of the non-target module to obtain the non-target module in the pure directory mode Module, wherein the non-target module in the pure directory mode contains the code file of the most recent update of the non-target module. That is to say, the modules in the version management tool contain version control information and code files. For the version management tool, all modules must be downloaded every time the code is downloaded. Therefore, the download files of non-target modules even It is a download file that the development user does not need, and must be downloaded, resulting in slow download speed and excessive disk space. Therefore, after removing the version control information in the non-target module that the development user does not need, and then downloading it together with the target module, the network traffic required for downloading files can be greatly reduced and the download speed can be increased.
  • the target module containing version control information refers to a module that can implement a version control function, for example, a module that contains a function of uploading code records and controlling version rollback.
  • the target module containing version control information can include the newly modified code and the version control information of the module after being downloaded.
  • code version management tools such as Git code version management tools, can store the code uploaded by the developer each time in the corresponding version and provide downloads of different versions of the code. For example, project 1 consists of modules A, B, and C.
  • the developer uploaded the code version of module A as V1.1, a few days later uploaded the code version as V1.2, and then uploaded the code version V1.3, and later found that the version of module A needs to be changed Roll back to V1.1, at this time, developer A only needs to use the code version management tool to re-download the code of the V1.1 version of module A, so as to achieve the purpose of version control.
  • the version management mode can also include more functions, such as branch management, code submission management, etc., which are not specifically limited here.
  • the non-target module in the pure directory mode refers to a module that does not contain version control information
  • the non-target module in the pure directory mode includes the code file of the most recent update of the non-target module. It should be understood that for non-target modules in pure directory mode, since they do not contain version control information, only the latest code content is included. If all modules are set to pure directory mode, modules in pure directory mode cannot directly submit modified code. You need to find the directory folder where the module code is stored by yourself, which brings inconvenience to developers. Therefore, this application chooses the method of switching only the non-target mode to the pure directory mode, which not only does not affect the process of the development user modifying the target module, but also improves the download speed and reduces the disk space occupation of the development user.
  • S104 Download the target module in the version mode and the non-target module in the pure directory mode, wherein the download file obtained by downloading the target module in the version mode includes the code file of the target module and the version of the target module Control information.
  • the target module in the download version mode and the non-target module in the pure directory mode include: downloading the most recently updated code and version control information of the target module, wherein the module The version control information includes at least the historical code modification record of the target module, the directory folder of the target module in the code warehouse, and the component information supporting version control, where the code warehouse is a server warehouse of a code version management tool; And, downloading the most recently updated code file of the non-target module. That is to say, after the non-target module is switched to the module in pure directory mode in step S103, the code can be downloaded through the version management tool.
  • the version management tool (such as Git) must download the code of all modules during the code download process Download it, so both the target module and the non-target module are downloaded. Among them, the difference between the version control information module and the pure directory module has been explained in step S103, and will not be repeated in this application.
  • Figure 4 is a schematic flow diagram of a code download method provided by this application. It can be seen from Figure 4 that, during the development process, developers can set the mode of target modules and non-target modules through code download scripts according to development needs. Make the code download script enter the switch command through the tool command in the Git management tool to switch the non-target module to the pure directory mode. Still taking the above example as an example, during the development process, developer A finds that the code of module A needs to be modified. Developer A can set modules B, C, and D to pure directory mode, and then download them in a unified manner. B, C, and D will be downloaded in the form of Zip package along with the code of each version of module A and the version control information of module A.
  • Modules B, C, and D are Zip compressed packages of pure directory files, which occupy very little memory.
  • the download speed will also be greatly improved, and the operation is simple. Since the code download script is configured in advance according to the Git environment variables, the developer does not even need to enter the Git visual operation interface, and download the script directly from the DOS interface or other visual operations of the code. After setting the target module in the interface, the download can be completed, which greatly improves the efficiency of the developer for code management.
  • the target module in the download version mode and the non-target module in the pure directory mode include: downloading the target module in the version mode in the form of a first compressed package, and downloading the target module in the second Download the non-target module in the pure directory mode in the form of a compressed package, wherein the lossless quality of the first compressed package is higher than the lossless quality of the second compressed package, and the compression rate of the first compressed package is low Or, downloading the target module in the version mode in an uncompressed form, and downloading the non-target module in the pure directory mode in the form of a compressed package. It is understandable that when the file is compressed, if the compression ratio is high, the file may be damaged when the compressed package is decompressed.
  • the non-target module is a module that the development user does not need to process
  • its compression rate can be set very high, and the high damage rate caused by the high compression rate can be completely ignored
  • the target module is the module that the development user needs to process
  • the target module The integrity of the downloaded file needs to be ensured. Therefore, the compression rate can be increased as much as possible without even compressing the file without loss, thereby maximizing the download speed of the code and reducing the local disk space occupation.
  • the version control information of the target module is retained, and after the non-target module is switched to a pure directory module that does not contain version control information, the code download script can enter the download code command git pull from Git to download the target module Zip archives of code and version control information, as well as the code of other non-target modules.
  • the downloaded file of the module containing version management information is larger and the download speed is slow.
  • the module of pure directory mode downloads the smaller file and the download speed is fast. Therefore, the solution provided by this application can be targeted at The mode switching of each module in the development project can solve the problem of slow code downloading from code management tools such as Git and occupation of local disk space.
  • the method further includes: receiving a code update request, wherein the code update request includes the The identification of the target module, the code of the modified target module and the title of the updated content; according to the component information supporting version control, the code of the modified target module is stored in the local code library; in the local code library When it is connected to the code repository, store the code of the modified target module in the local code repository in the directory folder to which the target module belongs in the code repository; store the target The update time of the module and the title of the update content. In other words, after updating the target module, you only need to submit the modified code of the target module.
  • project 1 is determined by the module It is composed of A, B, C and D.
  • the developer uploaded the code version of module A as V1.1, a few days later uploaded the code version as V1.2, and then uploaded the code version V1.3, and later found the need Roll back the version of module A to V1.1 and re-modify on the basis of V1.1.
  • developer A only sets modules other than module A as modules in pure directory mode, and then performs the entire project Unified download of code. After downloading and modifying the code of module A of V1.1, submit the modified code of module A.
  • the version management tool can automatically generate the code of V1.4 and compare it with other The version code is stored in a directory folder.
  • the codes are stored in the server code warehouse of the code version management tool. Therefore, after the user clicks the submit button in the floating window, the updated target module code can be placed locally In the library, when it is online, submit the content in the local library to the corresponding version library in the version management tool, so that no matter whether it is online or offline, you can submit code, avoiding the need for poor network environment The problem of waiting for a long time to submit code.
  • Figure 5 is a schematic diagram of a floating window provided by this application. It can be seen from Figure 5 that after the user submits the code, when the user selects the target update module again, the floating window can display the last update time, content, and Modify users, give users certain prompts, and facilitate user operations. It should be understood that the above examples are only for illustration and cannot constitute a specific limitation.
  • the mode conversion of the non-target module to obtain the non-target module in the pure directory mode includes: the code download script sends a mode switch command to the code version management tool, and the code version The management tool executes the mode switching command to convert the non-target module into a module in a pure directory mode;
  • the target module in the download version mode and the non-target module in the pure directory mode include: the code download script Send a code download command to the code version management tool, the code version management tool executes the code download command, downloads the target module in the version mode and the non-target module in the pure directory mode; according to the support
  • storing the code of the modified target module in the local code library includes: the code download script sends a code submission command to the code version management tool, and the code version management tool executes the The code submission command stores the code of the modified target module in the local code library by calling the component information supporting version control.
  • the user only needs to select the download and submit buttons through the floating window of the code download script.
  • the code download script can automatically perform mode switching and code download, that is, notify the version management tool to perform steps S101-S104.
  • the submission process can also be the same as the download process, which can be Enter the submission instructions in the version management tool through the code download script. This process does not require the developer to enter the Git visual operation interface to manually enter the instructions, thereby greatly improving the efficiency of the developer's code management.
  • the modules other than the target module in the module data table are determined to be non-target modules, and the non-target modules are mode converted to obtain pure The non-target module in the directory mode, so as to download the target module in the version mode and the non-target module in the pure directory mode.
  • the non-target module since the code of the target module and version control information are downloaded during the code download process, the non-target module only downloads the code, which greatly reduces the download file of the non-target module, thereby reducing the overall download time and the need Reserve disk space for non-target module code.
  • code download scripts are used throughout the entire process to download. Users only need to select the modules that need to be downloaded to complete the download, which improves the work efficiency of development users.
  • the device includes a receiving unit 610, a determining unit 620, a converting unit 630, a downloading unit 640, a display unit 650, and a submitting unit 660, wherein,
  • the receiving unit 610 is configured to receive a code download request, where the code download request carries an identifier of the target module to be downloaded;
  • the determining unit 620 is configured to determine modules other than the target module in the module data table as non-target modules according to the identifier of the target module, wherein the module data table stores the module identifier and the module The mapping relationship;
  • the conversion unit 630 is configured to perform mode conversion on the non-target module to obtain a non-target module in a pure directory mode, wherein the download file obtained by downloading the non-target module in the pure directory mode only contains the non-target module Code file
  • the download unit 640 is configured to download the target module in the version mode and the non-target module in the pure directory mode, wherein the download file obtained by downloading the target module in the version mode includes the code file of the target module and all The version control information of the target module.
  • the device is applied to an electronic device, a code version management tool is installed in the electronic device, a code download script is configured in the code version management tool, and the device further includes a display unit 650.
  • the display unit is used to, before the code download request is received, when the user’s left or right mouse button selects the name of the target module on the interface of the code version tool, the code download script is in the A floating window is displayed on the display screen of the electronic device, where the floating window includes at least a code download button, a code upload button, the time of the last update of the target module, and the title of the update content; the display unit 650 also When the user triggers the code download button, the code download script obtains the code download request triggered by the user, wherein the code download request includes the identifier of the target module; the display unit 650 also It is used to forward the code download request to the code version management tool through a code download script; the receiving unit 610 is used to receive the code download request through the code version management tool. That is
  • the code version management tool is equivalent to a code repository that can store and manage code, such as SVN (Subversion) tools, Git tools, etc.
  • the code version management tool can adjust the stored code according to the relevance of the project content Decomposed into different and independent version control modules. There is no necessary connection between each module and does not affect each other.
  • Figure 2 is a schematic diagram of the operating environment of the code download method provided by this application.
  • the user terminal A and the user terminal B jointly develop project 1
  • the user terminal A develops module A
  • the user terminal B develops module B
  • the user terminal C and client D jointly develop project two
  • client C develops module C
  • client D develops module D.
  • the use of code version management tools for project development can effectively avoid code conflicts and facilitate the coordinated development of multiple people when the project is relatively large and there are many developers involved. It should be understood that the above examples are only for illustration and cannot constitute a specific limitation.
  • the code download script is configured in the code version management tool.
  • the code download script parameters need to be configured in advance so that the version management tool can be based on A series of instructions sent by the code download script respond to operations.
  • the executable file git.exe can be configured in the execution path of the windows system, so that the code written in the script language can be executed in the windows environment, or to make the code download the script You can call git.exe to perform code download and submission operations through the code download script.
  • the Git commands required by the script may include a mode switching command and a code submission command, and both the mode switching command and the code submission command include the directory folder of the project component to which the target module belongs.
  • the code download script is configured with the environment variables of the code version management tool (such as Git). After the code download script is launched by the developer, git.exe can be automatically found and executed with Git's own running program The Git commands required by these scripts. Therefore, before using the code download script to perform code download or upload operations, the commands required by the script and corresponding to the version management tool, such as Git commands, SVN commands, etc., must be configured so that the code version management tool is receiving After these commands are received, the command can be responded to, that is, the code version management tool can switch the non-target module to a pure directory module after receiving the mode switching command.
  • the code version management tool such as Git
  • the floating window displayed by the display unit 650 may include an instruction download button and an instruction upload button.
  • FIG. 3 is a schematic diagram of a floating window provided by the present application.
  • the floating window 300 only displays download and upload buttons. When the user right-clicks on the module name, or selects the module name with the left mouse button, that is The window 300 can be automatically displayed, click the download button to trigger a code download request, where the code download request includes the module identifier.
  • the floating window 300 may also include other buttons, such as a mode switching button, a manual mode switching, so that the user can download multiple target modules, etc., which are not specifically limited in this application. It is understandable that the use of code download scripts for code download eliminates the tedious operation of developing users to repeatedly input instructions, greatly improves the user's operating efficiency, and improves the user's experience.
  • the development user selects the name of the target module to be downloaded, and clicks the download button in the floating window 300 shown in FIG. 3, for example, the code download script obtains the code download triggered by the development user Request, and the code download request contains the identifier of the target module selected by the developer user. Therefore, the module corresponding to the module identifier in the code download request can be determined as the target module for the next mode Switching operation. It is understandable that the entire module determination process, the mode switching process, and the module download process are all performed by the code download script, which simplifies the human operation process and improves the developer processing efficiency.
  • the code is stored in the server warehouse of the code version management tool.
  • the server warehouse of the code version management tool can be decomposed into different and independent modules according to the relevance of the project content. These modules can Form a development project. Therefore, when it is necessary to develop or modify on the basis of a certain module, the module containing version control information can be the target module, and other modules can be non-target modules. It should be understood that there may be one or more target modules, which are not specifically limited in this application.
  • the conversion unit 620 is specifically configured to delete the version control information of the non-target module to obtain the non-target module in the pure directory mode, wherein the non-target module in the pure directory mode includes The most recently updated code file of the non-target module. That is to say, the modules in the version management tool contain version control information and code files. For the version management tool, all modules must be downloaded every time the code is downloaded. Therefore, the download files of non-target modules even It is a download file that the development user does not need, and must be downloaded, resulting in slow download speed and excessive disk space. Therefore, after removing the version control information in the non-target module that the development user does not need, and then downloading it together with the target module, the network traffic required for downloading files can be greatly reduced and the download speed can be increased.
  • the target module containing version control information refers to a module that can implement a version control function, for example, a module that contains a function of uploading code records and controlling version rollback.
  • the target module containing version control information can include the newly modified code and the version control information of the module after being downloaded.
  • code version management tools such as Git code version management tools, can store the code uploaded by the developer each time in the corresponding version and provide downloads of different versions of the code.
  • project 1 consists of modules A, B, and C.
  • the developer uploaded the code version of module A as V1.1, a few days later uploaded the code version as V1.2, and then uploaded the code version V1.3, and later found that the version of module A needs to be changed Roll back to V1.1, at this time, developer A only needs to use the code version management tool to re-download the code of the V1.1 version of module A, so as to achieve the purpose of version control.
  • the version management mode can also include more functions, such as branch management, code submission management, etc., which are not specifically limited here.
  • the non-target module in the pure directory mode refers to a module that does not contain version control information
  • the non-target module in the pure directory mode includes the most recently updated code file of the non-target module. It should be understood that for non-target modules in pure directory mode, since they do not contain version control information, only the latest code content is included. If all modules are set to pure directory mode, modules in pure directory mode cannot directly submit modified code. You need to find the directory folder where the module code is stored by yourself, which brings inconvenience to developers. Therefore, this application chooses the method of switching only the non-target mode to the pure directory mode, which not only does not affect the process of the development user modifying the target module, but also improves the download speed and reduces the disk space occupation of the development user.
  • the download unit 640 is used to download the most recently updated code and version control information of the target module, where the module version control information includes at least the historical code modification record of the target module, all The directory folder of the target module in the code repository and the component information supporting version control, where the code repository is a server repository of a code version management tool; and, downloading the code file of the most recent update of the non-target module. That is to say, after the non-target module is switched to the module in pure directory mode in step S103, the code can be downloaded through the version management tool. Because the version management tool (such as Git) must download the code of all modules during the code download process Download it, so both the target module and the non-target module are downloaded. Among them, the difference between the version control information module and the pure directory module has been explained in step S103, and will not be repeated in this application.
  • the version management tool such as Git
  • Figure 4 is a schematic flow diagram of a code download method provided by this application. It can be seen from Figure 4 that, during the development process, developers can set the mode of target modules and non-target modules through code download scripts according to development needs. Make the code download script enter the switch command through the tool command in the Git management tool to switch the non-target module to the pure directory mode. Still taking the above example as an example, during the development process, developer A finds that the code of module A needs to be modified. Developer A can set modules B, C, and D to pure directory mode, and then download them in a unified manner. B, C, and D will be downloaded in the form of Zip package along with the code of each version of module A and the version control information of module A.
  • Modules B, C, and D are Zip compressed packages of pure directory files, which occupy very little memory.
  • the download speed will also be greatly improved, and the operation is simple. Since the code download script is configured in advance according to the Git environment variables, the developer does not even need to enter the Git visual operation interface, and download the script directly from the DOS interface or other visual operations of the code. After setting the target module in the interface, the download can be completed, which greatly improves the efficiency of the developer for code management.
  • the download unit 640 is configured to download the target module in the version mode in the form of a first compressed package, and download the non-target module in the pure directory mode in the form of a second compressed package, wherein, the lossless quality of the first compressed package is higher than the lossless quality of the second compressed package, and the compression rate of the first compressed package is lower than the compression rate of the second compressed package; or Download the target module in the version mode in a compressed form, and download the non-target module in the pure directory mode in the form of a compressed package. It is understandable that when the file is compressed, if the compression ratio is high, the file may be damaged when the compressed package is decompressed.
  • the non-target module is a module that the development user does not need to process
  • its compression rate can be set very high, and the high damage rate caused by the high compression rate can be completely ignored
  • the target module is the module that the development user needs to process
  • the target module The integrity of the downloaded file needs to be ensured. Therefore, the compression rate can be increased as much as possible without even compressing the file without loss, thereby maximizing the download speed of the code and reducing the local disk space occupation.
  • the version control information of the target module is retained, and after the non-target module is switched to a pure directory module that does not contain version control information, the code download script can enter the download code command git pull from Git to download the target module Zip archives of code and version control information, as well as the code of other non-target modules.
  • the downloaded file of the module containing version management information is larger and the download speed is slow.
  • the module of pure directory mode downloads the smaller file and the download speed is fast. Therefore, the solution provided by this application can be targeted at The mode switching of each module in the development project can solve the problem of slow code downloading from code management tools such as Git and occupation of local disk space.
  • the device further includes a submission unit 660
  • the receiving unit 610 is further configured to receive code updates after the target module in the download version mode and the non-target module in the pure directory mode Request, wherein the code update request includes the identifier of the target module, the code of the modified target module, and the title of the updated content;
  • the submission unit 660 is configured to modify the modification according to the component information supporting version control
  • the code of the latter target module is stored in the local code library;
  • the submission unit 660 is used to, when the local code library and the code warehouse are in a connected state, convert the modified code in the local code library
  • the code of the target module is stored in the directory folder to which the target module belongs in the code repository; the submission unit 660 is used to store the update time of the target module and the update content title.
  • project 1 is determined by the module It is composed of A, B, C and D. The developer uploaded the code version of module A as V1.1, a few days later uploaded the code version as V1.2, and then uploaded the code version V1.3, and later found the need Roll back the version of module A to V1.1 and re-modify on the basis of V1.1.
  • developer A only sets modules other than module A as modules in pure directory mode, and then performs the entire project Unified download of code. After downloading and modifying the code of module A of V1.1, submit the modified code of module A.
  • the version management tool can automatically generate the code of V1.4 and compare it with other The version code is stored in a directory folder.
  • the codes are stored in the server code warehouse of the code version management tool. Therefore, after the user clicks the submit button in the floating window, the updated target module code can be placed locally In the library, when it is online, submit the content in the local library to the corresponding version library in the version management tool, so that no matter whether it is online or offline, you can submit code, avoiding the need for poor network environment The problem of waiting for a long time to submit code.
  • Figure 5 is a schematic diagram of a floating window provided by this application. It can be seen from Figure 5 that after the user submits the code, when the user selects the target update module again, the floating window can display the last update time, content, and Modify users, give users certain prompts, and facilitate user operations. It should be understood that the above examples are only for illustration and cannot constitute a specific limitation.
  • the conversion unit 630 is specifically configured to: send a mode switch command to the code version management tool through the code download script, and the code version management tool executes the mode switch command to transfer the
  • the non-target module is converted to a module in pure directory mode
  • the download unit 640 is specifically configured to send a code download command to the code version management tool through the code download script, and the code version management tool executes the code download command, The target module in the download version mode and the non-target module in the pure directory mode
  • the submission unit 660 is specifically configured to send a code submission command to the code version management tool through the code download script, and the code version management The tool executes the code submission command, and stores the code of the modified target module in the local code library by calling the component information supporting version control.
  • the user only needs to select the download and submit buttons through the floating window of the code download script.
  • the code download script can automatically perform mode switching and code download, that is, notify the version management tool to perform steps S101-S104.
  • the submission process can also be the same as the download process, which can be Enter the submission instructions in the version management tool through the code download script. This process does not require the developer to enter the Git visual operation interface to manually enter the instructions, thereby greatly improving the efficiency of the developer's code management.
  • modules other than the target module in the module data table are determined to be non-target modules, and the non-target modules are mode converted to obtain pure The non-target module in the directory mode, so as to download the target module in the version mode and the non-target module in the pure directory mode.
  • the non-target module since the code of the target module and version control information are downloaded during the code download process, the non-target module only downloads the code, which greatly reduces the download file of the non-target module, thereby reducing the overall download time and reducing the need Reserve disk space for non-target module code.
  • code download scripts are used throughout the entire process to download. Users only need to select the modules that need to be downloaded to complete the download, which improves the work efficiency of development users.
  • FIG. 7 is a schematic structural diagram of an electronic device provided by the present application.
  • the electronic device in this embodiment as shown in the figure may include: one or more processors 711, a memory 712, and a communication interface 713.
  • the processor 711, the memory 712, and the communication interface 713 may be connected through a bus 714.
  • the processor 711 includes one or more general-purpose processors, where the general-purpose processor can be any type of device capable of processing electronic instructions, including a central processing unit (CPU), a graphics processing unit (GPU) ), microprocessor, microcontroller, main processor, controller and application specific integrated circuit (ASIC), digital signal processor (Digital Signal Processor, DSP), programmable gate array (Field-Programmable Gate) Array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
  • the processor 711 is configured to execute program instructions stored in the memory 712.
  • the memory 712 may include volatile memory, such as Random Access Memory (RAM); the memory may also include non-volatile memory, such as Read-Only Memory (ROM), Flash memory (Flash memory). Memory), Hard Disk Drive (HDD), or Solid-State Drive (SSD).
  • RAM Random Access Memory
  • ROM Read-Only Memory
  • Flash memory Flash memory
  • Memory Hard Disk Drive
  • SSD Solid-State Drive
  • the memory may also include a combination of the above types of memories.
  • the memory 712 may adopt centralized storage or distributed storage, which is not specifically limited here. It is understandable that the memory 712 is used to store computer programs, such as computer program instructions. In the embodiment of the present application, the memory 712 may provide instructions and data to the processor 711.
  • the communication interface 713 may be a wired interface (such as an Ethernet interface) or a wireless interface (such as a cellular network interface or using a wireless local area network interface) for communicating with other computer devices or users.
  • the communication interface 713 can adopt the protocol family on the network communication protocol (Transmission Control Protocol/Internet Protocol, TCP/IP), for example, the remote function call (Remote Function Call, RFC) protocol, simple Object Access Protocol (Simple Object Access Protocol, SOAP) protocol, Simple Network Management Protocol (Simple Network Management Protocol, SNMP), Common Object Request Broker Architecture (CORBA), distributed protocol, etc.
  • TCP/IP Transmission Control Protocol/Internet Protocol
  • RFC Remote Function Call
  • SOAP Simple Object Access Protocol
  • SNMP Simple Network Management Protocol
  • CORBA Common Object Request Broker Architecture
  • the communication interface 713 is a wireless interface
  • cellular communication can be used in accordance with the Global System for Mobile Communication (GSM) or Code Division Multiple Access (CDMA) standards, so it includes wireless for data transmission.
  • GSM Global System for Mobile Communication
  • CDMA Code Division Multiple Access
  • Modem electronic processing equipment, one or more digital memory devices, and dual antennas.
  • the processor 711, the memory 712, the communication interface 713, and the bus 714 can execute the implementation described in any embodiment of the code download method provided in the embodiment of the present application, and details are not described herein again.
  • a computer non-volatile readable storage medium stores a computer program
  • the computer program includes program instructions
  • the program instructions are executed by a processor
  • the computer non-volatile readable storage medium may be the internal storage unit of the terminal described in any of the foregoing embodiments, for example, the hard disk or memory of the terminal.
  • the computer-readable storage medium may also be an external storage device of the terminal, such as a plug-in hard disk equipped on the terminal, a Smart Media Card (SMC), or a Secure Digital (SD) card , Flash Card, etc.
  • the computer-readable storage medium may also include both an internal storage unit of the terminal and an external storage device.
  • the computer-readable storage medium is used to store the computer program and other programs and data required by the terminal.
  • the computer-readable storage medium can also be used to temporarily store data that has been output or will be output.
  • the disclosed method and device can be implemented in other ways.
  • the device embodiments described above are only illustrative.
  • the division of the units is only a logical function division, and there may be other divisions in actual implementation, for example, multiple units or components can be combined or It can be integrated into another system, or some features can be ignored or not implemented.
  • the displayed or discussed mutual coupling or direct coupling or communication connection may be indirect coupling or communication connection through some interfaces, devices or units, and may also be electrical, mechanical or other forms of connection.
  • the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the objectives of the solutions of the embodiments of the present application.
  • the functional units in the various embodiments of the present application may be integrated into one processing unit, or each unit may exist alone physically, or two or more units may be integrated into one unit.
  • the above-mentioned integrated unit can be implemented in the form of hardware or software functional unit.
  • the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer readable storage medium.
  • the technical solution of this application is essentially or the part that contributes to the existing technology, or all or part of the technical solution can be embodied in the form of a software product, and the computer software product is stored in a storage medium It includes several instructions to make a computer device (which may be a personal computer, a server, or a network device, etc.) execute all or part of the steps of the method described in each embodiment of the present application.
  • the aforementioned storage media include: U disk, mobile hard disk, ROM, RAM, magnetic disk or optical disk and other media that can store program codes.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供了代码下载的方法、装置、电子设备及计算机可读存储介质。所述方法包括:接收代码下载请求;根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块;对所述非目标模块进行模式转换,得到纯目录模式的非目标模块;下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。

Description

代码下载的方法、装置、电子设备及计算机存储介质
本申请要求于2019年05月20日提交中国专利局、申请号为201910420378.X、申请名称为“代码下载的方法、装置、电子设备及计算机存储介质”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及计算机领域,尤其涉及代码下载的方法、装置、电子设备及计算机存储介质。
背景技术
在项目开发的过程中,经常会出现多人分工协作进行项目开发并开发整合的过程,比如项目在刚开始进行时,经常会出现一些协作开发的同步问题,同时存在项目整体进度的控制和管理的问题。所以在程序开发行业衍生出了各种代码版本管理工具。代码版本管理工具是一个内容管理工具,可以将项目的内容信息存放在版本管理服务器上,方便项目组人员进行访问、查询和修改。
使用当前的代码版本管理工具,例如GIT代码版本管理工具,在进行平台升级或其他代码合并的场景时,如果是将全部代码压缩为Zip包进行下载和更新代码,修改了代码之后不能直接进行提交,如果使用全部是分布式版本控制系统(Georgia Institute of Technology,GIT)管理模块的方式下载更新代码,在项目比较庞大时,更新代码会很长,浪费时间并且占用本地磁盘空间比较大。
发明内容
本申请提供了代码下载的方法、装置、电子设备及计算机存储介质。用于解决从代码版本管理工具中下载代码速度慢,占用本地磁盘空间大的问题。
第一方面,提供了一种代码下载的方法,所述方法包括以下步骤:
接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识;
根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系;
对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含所述非目标模块的代码文件;
下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码文件和所述目标模块的版本控制信息。
第二方面,提供了一种代码下载的装置,所述装置包括:
接收单元,所述接收单元用于接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识;
确定单元,所述确定单元用于根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系;
转换单元,所述转换单元用于对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含非目标模块的代码;
下载单元,所述下载单元用于下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码和所述目标模块的版本控制信息。
第三方面,提供了一种电子设备,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行上述第一方面所述的方法
第四方面,提供了一种计算机非易失性可读存储介质,所述计算机存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行上述第一方面的方法。
基于本申请提供的代码下载的方法、装置、电子设备及计算机存储介质,通过接收代码下载请求,根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,从而下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。由于代码下载过程中,目标模块的代码以及版本控制信息下载下来,非目标模块只下载了代码,使得非目标模块的下载文件大大缩小,从而降低了整体的下载时间,减少了需要放置非目标模块代码的预留磁盘空间。并且,对于开发用户来说,全程使用代码下载脚本进行下载,用户只需要选择需要下载的模块即可完成下载,提高开发用户的工作效率。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请提供的一种代码下载的方法的流程示意图;
图2是本申请提供的一种代码下载方法的运行环境示意图;
图3是本申请提供的一种悬浮窗口的示意图;
图4是本申请提供的一种代码下载方法的流程示意图;
图5是本申请提供的一种悬浮窗口的示意图;
图6是本申请提供的一种代码下载装置的结构示意图;
图7是本申请提供的一种电子设备结构示意框图。
具体实施方式
下面通过具体实施方式结合附图对本申请作进一步详细说明。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或描述,这是为了避免本申请的核心部分被过多的描述所淹没。对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
应当理解,当在本说明书和所附权利要求书中使用术语时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
需要说明的是,在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
图1是本申请提供的一种代码下载的方法的流程示意图,所述方法应用于电子设备,所述电子设备中安装有代码版本管理工具,且配置有代码下载脚本,由图1可知,本申请 提供的代码下载的方法包括以下步骤:
S101:接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识。
在本申请实施例中,所述方法应用于电子设备,所述电子设备中安装有代码版本管理工具,代码下载脚本配置于所述代码版本管理工具中,所述接收代码下载请求之前,所述方法还包括:在用户鼠标的左键或者右键在所述代码版本工具的界面中拉选所述目标模块的名称的情况下,所述代码下载脚本在所述电子设备的显示屏幕中显示一悬浮窗口,其中,所述悬浮窗口至少包括代码下载按钮、代码上传按钮、所述目标模块最近一次更新的时间以及所述更新内容标题;在用户触发所述代码下载按钮的情况下,所述代码下载脚本获取用户触发的所述代码下载请求,其中,所述代码下载请求包括所述目标模块的标识;所述代码下载脚本向所述代码版本管理工具转发所述代码下载请求;所述接收代码下载请求,包括:所述代码版本管理工具接收所述代码下载请求。也就是说,所述代码下载请求是由用户通过代码下载脚本触发,然后代码下载脚本再将所述代码下载请求转发给代码版本管理工具的。
具体实现中,所述代码版本管理工具相当于一个能够存储和管理代码的代码仓库,例如,SVN(Subversion)工具、Git工具等等,代码版本管理工具可以将储存的代码根据项目内容的关联性分解成不同的且相互独立的版本控制模块,每个模块之间没有必然的联系,互不影响。例如,图2是本申请提供的代码下载方法的运行环境示意图,在图2中,用户端A和用户端B共同开发项目一,用户端A开发模块A,用户端B开发模块B,用户端C和用户端D共同开发项目二,用户端C开发模块C,用户端D开发模块D。可以理解的是,使用代码版本管理工具进行项目开发,在对于项目比较庞大,参与开发人员较多的情形下,可以有效避免代码冲突,利于多人协调开发。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,所述代码下载脚本配置于所述代码版本管理工具中,为了使得代码下载脚本能够辅助开发者进行代码下载,需要提前配置好代码下载脚本参数,使得版本管理工具可以根据由代码下载脚本发送的一系列指令响应操作。例如,对于Git代码版本管理工具来说,可以将可执行文件git.exe配置到windows系统的执行路径中,使得脚本语言编写的代码能够在windows的环境中进行执行,或者说,使得代码下载脚本可以调用git.exe,从而通过代码下载脚本执行代码下载与提交的操作。再配置Git的环境变量,把实现脚本功能所需要的Git命令写入脚本,使得开发者启动脚本时,代码下载脚本可以自动找到git.exe,用Git自身的运行程序去执行这些脚本需要的Git命令,例如,脚本所需的Git指令可以包括模式切换命令以及代码提交命令,所述模式切换命令以及代码提交命令中均包括所述目标模块所属项目组件的目录文件夹。应理解,上述举例仅用于说明,并不能构成具体限定。
需要说明的,参考前述内容可知,代码下载脚本配置好代码版本管理工具(例如Git)的环境变量,代码下载脚本被开发用户启动后,可以自动找到git.exe,用Git自身的运行程序去执行这些脚本需要的Git命令。因此,在使用代码下载脚本进行代码下载或上传的操作之前,还要配置好脚本需要的、与版本管理工具对应的命令,例如Git命令,SVN命令等等,使得所述代码版本管理工具在接收到这些命令后可以响应该指令,也就是说,使得所述代码版本管理工具在接收到模式切换指令后,将所述非目标模块切换为纯目录模块。
在一实施例中,所述悬浮窗口可以包括指令下载按钮以及指令上传按钮。例如,图3是本申请提供的一种悬浮窗口示意图,其中,示例性的,悬浮窗300仅显示了下载和上传按钮,当用户右键点击模块名称,或者光标左键拉选模块名称后,即可自动显示出窗口300,点击下载按钮,即可触发代码下载请求,其中,所述代码下载请求包括模块标识。需要说明的,悬浮窗口300还可以包括其他按钮,例如模式切换按钮,手动切换模式,使得用户 可以下载多个目标模块等等,本申请不作具体限定。可以理解的,使用代码下载脚本进行代码下载,免去了开发用户重复输入指令的繁冗操作,大大提高了用户的操作效率,提高用户的使用体验。
S102:根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系。
在本申请实施例中,开发用户选中需要下载的目标模块名称,在例如图3所示的悬浮窗口300中点击了下载按钮后,所述代码下载脚本就获取了所述开发用户触发的代码下载请求,并且,所述代码下载请求中包含了所述开发用户所选的目标模块的标识,因此,可以将所述代码下载请求中的模块标识对应的模块确定为目标模块,以便进行接下来模式切换的操作。可以理解的是,整个模块确定过程、模式切换过程以及模块下载过程均由代码下载脚本进行,简化了人为操作过程,提高开发者处理效率。
需要说明的,参考前述内容可知,代码存储在代码版本管理工具的服务器仓库中,代码版本管理工具的服务器仓库可以根据项目内容的关联性分解成不同的且相互独立的多个模块,这些模块可以组成一个开发项目。因此,当需要在某一模块基础上进行开发或者修改时,该包含版本控制信息的模块就可以是目标模块,而其他模块就可以是非目标模块。应理解,目标模块可以是一个或者多个,本申请不作具体限定。
S103:对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含所述非目标模块的代码文件。
在本申请实施例中,所述对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,包括:删除所述非目标模块的版本控制信息,获得所述纯目录模式的非目标模块,其中,所述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。也就是说,版本管理工具中的模块都是包含版本控制信息以及代码文件的,而对于版本管理工具来说,每次代码下载都要将所有模块下载下来,因此,非目标模块的下载文件即使是开发用户不需要的下载文件,也必须下载下来,导致下载速度缓慢,磁盘空间占用过大。因此,将开发用户不需要的非目标模块中的版本控制信息剔除后,再同目标模块一起下载时,可以大大降低下载文件时所需的网络流量,提高下载速度。
下面对包含版本控制信息的模块与纯目录模式的模块之间的区别进行简要介绍。
在本申请实施例中,包含版本控制信息的目标模块指的是可以实现版本控制功能的模块,例如包含上传代码记录、并且能控制版本回滚的功能的模块。包含版本控制信息的目标模块下载后可以包括最新修改的代码以及该模块的版本控制信息。应理解,代码版本管理工具,例如Git代码版本管理工具,可以将开发者每次上传的代码以相应的版本进行存储,并提供不同版本代码的下载,例如,项目1由模块A、B、C以及D组成,开发者上传了模块A的代码版本为V1.1,几天后又上传了代码版本为V1.2,之后又上传了代码版本V1.3,后续又发现需要将模块A的版本回滚到V1.1,此时开发者A只需要使用代码版本管理工具重新下载模块A的V1.1版本的代码即可,从而达到版本控制的目的。上述举例仅用于说明,版本管理模式还可以包含更多的功能,例如分支管理、代码提交管理等等,此处不作具体限定。应理解,如果将所有模块设置为包含版本控制信息的模块,开发者如果只需要对其中的一个模块进行修改和提交时,也要将其他模块一同下载,由于项目一般来讲都是非常庞大的,这样就会大大增加代码下载的时间,并且占用大量本地磁盘空间。也就是说,仍以上述例子为例,开发者A现在只需要修改模块A的代码,如果所有模块都是包含版本控制信息的模块,开发者A需要下载模块A、B、C以及D的代码后,对A进行修改,再上传模块A修改后的代码。这一过程不但浪费时间,并且还要预留足够的空间去放置B、C以及D模块的代码,占用本地磁盘空间。
在本申请实施例中,纯目录模式的非目标模块指的是不包含版本控制信息的模块,所 述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。应理解,对于纯目录模式的非目标模块来说,由于不包含版本控制信息,只包含最新代码内容,如果将全部模块设置为纯目录模式,纯目录模式的模块不能直接提交修改后的代码,需要自己找到该模块代码存储的目录文件夹,为开发者带来不便。因此,本申请选择了只将非目标模式切换为纯目录模式的方法,不仅没有对开发用户修改目标模块的过程产生影响,还可以提高下载速度,减少开发用户的磁盘空间占用。
S104:下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码文件和所述目标模块的版本控制信息。
在本申请实施例中,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,包括:下载所述目标模块最近一次更新的代码以及版本控制信息,其中,所述模块版本控制信息至少包括所述目标模块的历史代码修改记录、所述目标模块在代码仓库中的目录文件夹以及支撑版本控制的组件信息,其中,所述代码仓库是代码版本管理工具的服务器仓库;以及,下载所述非目标模块最近一次更新的代码文件。也就是说,在步骤S103将非目标模块切换为纯目录模式的模块后,即可通过版本管理工具进行代码下载,由于版本管理工具(例如Git)在代码下载过程中,必须将所有模块的代码下载下来,因此目标模块以及非目标模块都进行了下载。其中,关于版本控制信息的模块以及纯目录模块之间的区别,在步骤S103已进行了解释,本申请不再赘述。
例如,图4是本申请提供的一种代码下载方法的流程示意图,由图4可知,开发者可以在开发过程中,可以根据开发需求,通过代码下载脚本设置目标模块和非目标模块的模式,使得代码下载脚本通过Git管理工具中的工具命令,输入切换命令,将非目标模块切换为纯目录模式。仍以上述例子为例,开发者在开发过程中,开发者A发现模块A的代码需要修改,开发者A可以将模块B、C、D设置为纯目录模式后,进行统一下载,此时模块B、C、D会以Zip包的形式与模块A各个版本的代码、模块A的版本控制信息一同下载下来,模块B、C、D由于是纯目录文件的Zip压缩包,占用内存非常小,下载速度也会大大提高,并且操作简单,由于代码下载脚本是根据Git的环境变量提前配置好的,因此开发者甚至无需进入Git的可视化操作界面,直接从代码下载脚本的DOS界面或者其他可视化操作界面中设定好目标模块即可完成下载,从而大大提高了开发者对于代码管理的效率。
在本申请实施例中,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,包括:以第一压缩包的形式下载版本模式的所述目标模块,以及以第二压缩包的形式下载所述纯目录模式的非目标模块,其中,所述第一压缩包的无损质量高于所述第二压缩包的无损质量,并且,所述第一压缩包的压缩率低于所述第二压缩包的压缩率;或者,以无压缩的形式下载所述版本模式的所述目标模块,以压缩包的形式下载所述纯目录模式的非目标模块。可以理解的,对文件进行压缩时,如果压缩率很高,在解压压缩包时,可能会出现文件受损的情况。由于非目标模块是开发用户不需要处理的模块,因此可以将其压缩率设置的非常高,可以完全无视高压缩率带来的高损坏率,但是目标模块是开发用户需要处理的模块,目标模块的下载文件需要确保其完整性,因此可以在确保文件无损的情况下,尽可能的提高压缩率,甚至不进行压缩,从而最大程度的提高代码的下载速度,降低本地磁盘空间的占用。具体实现中,将目标模块的版本控制信息保留,非目标模块切换为不包含版本控制信息的纯目录模块后,代码下载脚本可以从Git中输入下载代码的指令git pull,即可下载目标模块的代码和版本控制信息,以及其他非目标模块的代码的Zip压缩包。可以理解的是,包含版本管理信息的模块下载后的文件较大,下载速度慢,纯目录模式的模块下载后的文件较小,下载速度快,因此,本申请提供的方案可以根据需求,针 对性的对开发项目中的各个模块进行模式切换,可以解决从代码管理工具如Git中下载代码速度慢、占用本地磁盘空间的问题。
在本申请实施例中,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块之后,所述方法还包括:接收代码更新请求,其中,所述代码更新请求包括所述目标模块的标识、修改后的目标模块的代码以及更新内容标题;根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中;在所述本地代码库与所述代码仓库是连接状态的情况下,将所述本地代码库中的所述修改后的目标模块的代码,存储到代码仓库中所述目标模块所属的的目录文件夹;存储所述目标模块的更新时间以及所述更新内容标题。也就是说,对目标模块进行更新后,只需提交目标模块的修改后的代码,由于非目标模块的代码并没有做出修改,因此不需要提交其他纯目录模式的非目标模块的代码,并且,由于目标模块的下载文件中还包括了版本控制信息,因此可以直接通过代码版本管理工具中的提交功能,将修改后的代码存储在目录文件夹,仍以上述例子为例,项目1由模块A、B、C以及D组成,开发者上传了模块A的代码版本为V1.1,几天后又上传了代码版本为V1.2,之后又上传了代码版本V1.3,后续又发现需要将模块A的版本回滚到V1.1,在V1.1的基础上重新进行修改,此时开发者A只将除模块A之外的其他模块设置为纯目录模式的模块,然后进行整个项目代码的统一下载,将V1.1版本的模块A的代码下载并修改后,将修改后的模块A的代码进行提交,版本管理工具即可自动生成V1.4版本的代码,并将其与其他版本的代码保存在一个目录文件夹中。
在本申请实施例中,根据图2可知,代码都存储于代码版本管理工具的服务器代码仓库中,因此,用户点击悬浮窗口中的提交按钮后,可以先将更新后的目标模块代码放在本地库中,当处于在线状态时,再将本地库中的内容提交到版本管理工具中对应的版本库中,这样无论是在线或者离线状态,都可以进行代码提交,避免了因为网络环境不好需要长时间等待提交代码的问题。图5是本申请提供的一种悬浮窗口的示意图,由图5可知,在用户提交代码后,当用户再次选择目标更新模块后,悬浮窗口即可显示该模块上一次更新的时间、内容、以及修改用户,给予用户一定的提示,方便了用户的操作。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,所述对所述非目标模块进行模式转换,得到纯目录模式的非目标模块包括:所述代码下载脚本向所述代码版本管理工具发送模式切换命令,所述代码版本管理工具执行所述模式切换命令,将所述非目标模块转换为纯目录模式的模块;所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块包括:所述代码下载脚本向所述代码版本管理工具发送代码下载命令,所述代码版本管理工具执行所述代码下载命令,下载版本模式的所述目标模块以及所述纯目录模式的非目标模块;所述根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中包括:所述代码下载脚本向所述代码版本管理工具发送代码提交命令,所述代码版本管理工具执行所述代码提交命令,通过调用所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中。用户只需要通过代码下载脚本的悬浮窗口选择下载、提交按钮,代码下载脚本可以自动进行模式切换以及代码下载,即通知版本管理工具执行步骤S101-S104,提交过程也可以与下载过程相同,可以是通过代码下载脚本在版本管理工具中输入提交指令,这个过程无需开发者再进入Git的可视化操作界面手动输入指令,从而大大提高了开发者对于代码管理的效率。
上述方法中,通过接收代码下载请求,根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,从而下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。通过上述方法,由于代码下载过程中,目标模块的代码以及版本控制信息下载下来, 非目标模块只下载了代码,使得非目标模块的下载文件大大缩小,从而降低了整体的下载时间,减少了需要放置非目标模块代码的预留磁盘空间。并且,对于开发用户来说,全程使用代码下载脚本进行下载,用户只需要选择需要下载的模块即可完成下载,提高开发用户的工作效率。
图6是本申请提供的一种代码下载装置的结构示意图,所述装置包括接收单元610、确定单元620、转换单元630、下载单元640、显示单元650以及提交单元660,其中,
所述接收单元610用于接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识;
所述确定单元620用于根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系;
所述转换单元630用于对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含所述非目标模块的代码文件;
所述下载单元640用于下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码文件和所述目标模块的版本控制信息。
在本申请实施例中,所述装置应用于电子设备,所述电子设备中安装有代码版本管理工具,代码下载脚本配置于所述代码版本管理工具中,所述装置还包括显示单元650,所述显示单元用于在所述接收代码下载请求之前,在用户鼠标的左键或者右键在所述代码版本工具的界面中拉选所述目标模块的名称的情况下,所述代码下载脚本在所述电子设备的显示屏幕中显示一悬浮窗口,其中,所述悬浮窗口至少包括代码下载按钮、代码上传按钮、所述目标模块最近一次更新的时间以及所述更新内容标题;所述显示单元650还用于在用户触发所述代码下载按钮的情况下,所述代码下载脚本获取用户触发的所述代码下载请求,其中,所述代码下载请求包括所述目标模块的标识;所述显示单元650还用于通过代码下载脚本向所述代码版本管理工具转发所述代码下载请求;所述接收单元610用于通过所述代码版本管理工具接收所述代码下载请求。也就是说,所述代码下载请求是由用户通过代码下载脚本触发,然后代码下载脚本再将所述代码下载请求转发给代码版本管理工具的。
具体实现中,所述代码版本管理工具相当于一个能够存储和管理代码的代码仓库,例如,SVN(Subversion)工具、Git工具等等,代码版本管理工具可以将储存的代码根据项目内容的关联性分解成不同的且相互独立的版本控制模块,每个模块之间没有必然的联系,互不影响。例如,图2是本申请提供的代码下载方法的运行环境示意图,在图2中,用户端A和用户端B共同开发项目一,用户端A开发模块A,用户端B开发模块B,用户端C和用户端D共同开发项目二,用户端C开发模块C,用户端D开发模块D。可以理解的是,使用代码版本管理工具进行项目开发,在对于项目比较庞大,参与开发人员较多的情形下,可以有效避免代码冲突,利于多人协调开发。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,所述代码下载脚本配置于所述代码版本管理工具中,为了使得代码下载脚本能够辅助开发者进行代码下载,需要提前配置好代码下载脚本参数,使得版本管理工具可以根据由代码下载脚本发送的一系列指令响应操作。例如,对于Git代码版本管理工具来说,可以将可执行文件git.exe配置到windows系统的执行路径中,使得脚本语言编写的代码能够在windows的环境中进行执行,或者说,使得代码下载脚本可以调用git.exe,从而通过代码下载脚本执行代码下载与提交的操作。再配置Git的环境变量,把实 现脚本功能所需要的Git命令写入脚本,使得开发者启动脚本时,代码下载脚本可以自动找到git.exe,用Git自身的运行程序去执行这些脚本需要的Git命令,例如,脚本所需的Git指令可以包括模式切换命令以及代码提交命令,所述模式切换命令以及代码提交命令中均包括所述目标模块所属项目组件的目录文件夹。应理解,上述举例仅用于说明,并不能构成具体限定。
需要说明的,参考前述内容可知,代码下载脚本配置好代码版本管理工具(例如Git)的环境变量,代码下载脚本被开发用户启动后,可以自动找到git.exe,用Git自身的运行程序去执行这些脚本需要的Git命令。因此,在使用代码下载脚本进行代码下载或上传的操作之前,还要配置好脚本需要的、与版本管理工具对应的命令,例如Git命令,SVN命令等等,使得所述代码版本管理工具在接收到这些命令后可以响应该指令,也就是说,使得所述代码版本管理工具在接收到模式切换指令后,将所述非目标模块切换为纯目录模块。
在一实施例中,所述显示单元650显示的所述悬浮窗口可以包括指令下载按钮以及指令上传按钮。例如,图3是本申请提供的一种悬浮窗口示意图,其中,示例性的,悬浮窗300仅显示了下载和上传按钮,当用户右键点击模块名称,或者光标左键拉选模块名称后,即可自动显示出窗口300,点击下载按钮,即可触发代码下载请求,其中,所述代码下载请求包括模块标识。需要说明的,悬浮窗口300还可以包括其他按钮,例如模式切换按钮,手动切换模式,使得用户可以下载多个目标模块等等,本申请不作具体限定。可以理解的,使用代码下载脚本进行代码下载,免去了开发用户重复输入指令的繁冗操作,大大提高了用户的操作效率,提高用户的使用体验。
在本申请实施例中,开发用户选中需要下载的目标模块名称,在例如图3所示的悬浮窗口300中点击了下载按钮后,所述代码下载脚本就获取了所述开发用户触发的代码下载请求,并且,所述代码下载请求中包含了所述开发用户所选的目标模块的标识,因此,可以将所述代码下载请求中的模块标识对应的模块确定为目标模块,以便进行接下来模式切换的操作。可以理解的是,整个模块确定过程、模式切换过程以及模块下载过程均由代码下载脚本进行,简化了人为操作过程,提高开发者处理效率。
需要说明的,参考前述内容可知,代码存储在代码版本管理工具的服务器仓库中,代码版本管理工具的服务器仓库可以根据项目内容的关联性分解成不同的且相互独立的多个模块,这些模块可以组成一个开发项目。因此,当需要在某一模块基础上进行开发或者修改时,该包含版本控制信息的模块就可以是目标模块,而其他模块就可以是非目标模块。应理解,目标模块可以是一个或者多个,本申请不作具体限定。
在本申请实施例中,所述转换单元620具体用于删除所述非目标模块的版本控制信息,获得所述纯目录模式的非目标模块,其中,所述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。也就是说,版本管理工具中的模块都是包含版本控制信息以及代码文件的,而对于版本管理工具来说,每次代码下载都要将所有模块下载下来,因此,非目标模块的下载文件即使是开发用户不需要的下载文件,也必须下载下来,导致下载速度缓慢,磁盘空间占用过大。因此,将开发用户不需要的非目标模块中的版本控制信息剔除后,再同目标模块一起下载时,可以大大降低下载文件时所需的网络流量,提高下载速度。
下面对包含版本控制信息的模块与纯目录模式的模块之间的区别进行简要介绍。
其中,包含版本控制信息的目标模块指的是可以实现版本控制功能的模块,例如包含上传代码记录、并且能控制版本回滚的功能的模块。包含版本控制信息的目标模块下载后可以包括最新修改的代码以及该模块的版本控制信息。应理解,代码版本管理工具,例如Git代码版本管理工具,可以将开发者每次上传的代码以相应的版本进行存储,并提供不同版本代码的下载,例如,项目1由模块A、B、C以及D组成,开发者上传了模块A的代 码版本为V1.1,几天后又上传了代码版本为V1.2,之后又上传了代码版本V1.3,后续又发现需要将模块A的版本回滚到V1.1,此时开发者A只需要使用代码版本管理工具重新下载模块A的V1.1版本的代码即可,从而达到版本控制的目的。上述举例仅用于说明,版本管理模式还可以包含更多的功能,例如分支管理、代码提交管理等等,此处不作具体限定。应理解,如果将所有模块设置为包含版本控制信息的模块,开发者如果只需要对其中的一个模块进行修改和提交时,也要将其他模块一同下载,由于项目一般来讲都是非常庞大的,这样就会大大增加代码下载的时间,并且占用大量本地磁盘空间。也就是说,仍以上述例子为例,开发者A现在只需要修改模块A的代码,如果所有模块都是包含版本控制信息的模块,开发者A需要下载模块A、B、C以及D的代码后,对A进行修改,再上传模块A修改后的代码。这一过程不但浪费时间,并且还要预留足够的空间去放置B、C以及D模块的代码,占用本地磁盘空间。
在本申请实施例中,纯目录模式的非目标模块指的是不包含版本控制信息的模块,所述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。应理解,对于纯目录模式的非目标模块来说,由于不包含版本控制信息,只包含最新代码内容,如果将全部模块设置为纯目录模式,纯目录模式的模块不能直接提交修改后的代码,需要自己找到该模块代码存储的目录文件夹,为开发者带来不便。因此,本申请选择了只将非目标模式切换为纯目录模式的方法,不仅没有对开发用户修改目标模块的过程产生影响,还可以提高下载速度,减少开发用户的磁盘空间占用。
在本申请实施例中,所述下载单元640用于下载所述目标模块最近一次更新的代码以及版本控制信息,其中,所述模块版本控制信息至少包括所述目标模块的历史代码修改记录、所述目标模块在代码仓库中的目录文件夹以及支撑版本控制的组件信息,其中,所述代码仓库是代码版本管理工具的服务器仓库;以及,下载所述非目标模块最近一次更新的代码文件。也就是说,在步骤S103将非目标模块切换为纯目录模式的模块后,即可通过版本管理工具进行代码下载,由于版本管理工具(例如Git)在代码下载过程中,必须将所有模块的代码下载下来,因此目标模块以及非目标模块都进行了下载。其中,关于版本控制信息的模块以及纯目录模块之间的区别,在步骤S103已进行了解释,本申请不再赘述。
例如,图4是本申请提供的一种代码下载方法的流程示意图,由图4可知,开发者可以在开发过程中,可以根据开发需求,通过代码下载脚本设置目标模块和非目标模块的模式,使得代码下载脚本通过Git管理工具中的工具命令,输入切换命令,将非目标模块切换为纯目录模式。仍以上述例子为例,开发者在开发过程中,开发者A发现模块A的代码需要修改,开发者A可以将模块B、C、D设置为纯目录模式后,进行统一下载,此时模块B、C、D会以Zip包的形式与模块A各个版本的代码、模块A的版本控制信息一同下载下来,模块B、C、D由于是纯目录文件的Zip压缩包,占用内存非常小,下载速度也会大大提高,并且操作简单,由于代码下载脚本是根据Git的环境变量提前配置好的,因此开发者甚至无需进入Git的可视化操作界面,直接从代码下载脚本的DOS界面或者其他可视化操作界面中设定好目标模块即可完成下载,从而大大提高了开发者对于代码管理的效率。
在本申请实施例中,所述下载单元640用于:以第一压缩包的形式下载版本模式的所述目标模块,以及以第二压缩包的形式下载所述纯目录模式的非目标模块,其中,所述第一压缩包的无损质量高于所述第二压缩包的无损质量,并且,所述第一压缩包的压缩率低于所述第二压缩包的压缩率;或者,以无压缩的形式下载所述版本模式的所述目标模块,以压缩包的形式下载所述纯目录模式的非目标模块。可以理解的,对文件进行压缩时,如果压缩率很高,在解压压缩包时,可能会出现文件受损的情况。由于非目标模块是开发用户不需要处理的模块,因此可以将其压缩率设置的非常高,可以完全无视高压缩率带来的 高损坏率,但是目标模块是开发用户需要处理的模块,目标模块的下载文件需要确保其完整性,因此可以在确保文件无损的情况下,尽可能的提高压缩率,甚至不进行压缩,从而最大程度的提高代码的下载速度,降低本地磁盘空间的占用。具体实现中,将目标模块的版本控制信息保留,非目标模块切换为不包含版本控制信息的纯目录模块后,代码下载脚本可以从Git中输入下载代码的指令git pull,即可下载目标模块的代码和版本控制信息,以及其他非目标模块的代码的Zip压缩包。可以理解的是,包含版本管理信息的模块下载后的文件较大,下载速度慢,纯目录模式的模块下载后的文件较小,下载速度快,因此,本申请提供的方案可以根据需求,针对性的对开发项目中的各个模块进行模式切换,可以解决从代码管理工具如Git中下载代码速度慢、占用本地磁盘空间的问题。
在本申请实施例中,所述装置还包括提交单元660,所述接收单元610还用于在所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块之后,接收代码更新请求,其中,所述代码更新请求包括所述目标模块的标识、修改后的目标模块的代码以及更新内容标题;所述提交单元660用于根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中;所述提交单元660用于在所述本地代码库与所述代码仓库是连接状态的情况下,将所述本地代码库中的所述修改后的目标模块的代码,存储到代码仓库中所述目标模块所属的的目录文件夹;所述提交单元660用于存储所述目标模块的更新时间以及所述更新内容标题。也就是说,对目标模块进行更新后,只需提交目标模块的修改后的代码,由于非目标模块的代码并没有做出修改,因此不需要提交其他纯目录模式的非目标模块的代码,并且,由于目标模块的下载文件中还包括了版本控制信息,因此可以直接通过代码版本管理工具中的提交功能,将修改后的代码存储在目录文件夹,仍以上述例子为例,项目1由模块A、B、C以及D组成,开发者上传了模块A的代码版本为V1.1,几天后又上传了代码版本为V1.2,之后又上传了代码版本V1.3,后续又发现需要将模块A的版本回滚到V1.1,在V1.1的基础上重新进行修改,此时开发者A只将除模块A之外的其他模块设置为纯目录模式的模块,然后进行整个项目代码的统一下载,将V1.1版本的模块A的代码下载并修改后,将修改后的模块A的代码进行提交,版本管理工具即可自动生成V1.4版本的代码,并将其与其他版本的代码保存在一个目录文件夹中。
在本申请实施例中,根据图2可知,代码都存储于代码版本管理工具的服务器代码仓库中,因此,用户点击悬浮窗口中的提交按钮后,可以先将更新后的目标模块代码放在本地库中,当处于在线状态时,再将本地库中的内容提交到版本管理工具中对应的版本库中,这样无论是在线或者离线状态,都可以进行代码提交,避免了因为网络环境不好需要长时间等待提交代码的问题。图5是本申请提供的一种悬浮窗口的示意图,由图5可知,在用户提交代码后,当用户再次选择目标更新模块后,悬浮窗口即可显示该模块上一次更新的时间、内容、以及修改用户,给予用户一定的提示,方便了用户的操作。应理解,上述举例仅用于说明,并不能构成具体限定。
在本申请实施例中,所述转换单元630具体用于:通过所述代码下载脚本向所述代码版本管理工具发送模式切换命令,所述代码版本管理工具执行所述模式切换命令,将所述非目标模块转换为纯目录模式的模块;所述下载单元640具体用于通过所述代码下载脚本向所述代码版本管理工具发送代码下载命令,所述代码版本管理工具执行所述代码下载命令,下载版本模式的所述目标模块以及所述纯目录模式的非目标模块;所述提交单元660具体用于通过所述代码下载脚本向所述代码版本管理工具发送代码提交命令,所述代码版本管理工具执行所述代码提交命令,通过调用所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中。用户只需要通过代码下载脚本的悬浮窗口选择下载、提交按钮,代码下载脚本可以自动进行模式切换以及代码下载,即通知版本管理工具执行步骤S101-S104,提交过程也可以与下载过程相同,可以是通过代码下载脚本在版本 管理工具中输入提交指令,这个过程无需开发者再进入Git的可视化操作界面手动输入指令,从而大大提高了开发者对于代码管理的效率。
上述装置中,通过接收代码下载请求,根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,从而下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。通过上述装置,由于代码下载过程中,目标模块的代码以及版本控制信息下载下来,非目标模块只下载了代码,使得非目标模块的下载文件大大缩小,从而降低了整体的下载时间,减少了需要放置非目标模块代码的预留磁盘空间。并且,对于开发用户来说,全程使用代码下载脚本进行下载,用户只需要选择需要下载的模块即可完成下载,提高开发用户的工作效率。
参见图7,图7是本申请提供的一种电子设备的结构示意图。如图所示的本实施例中的电子设备可以包括:一个或者多个处理器711、存储器712和通信接口713。其中,处理器711、存储器712和通信接口713之间可以通过总线714连接。
处理器711包括一个或者多个通用处理器,其中,通用处理器可以是能够处理电子指令的任何类型的设备,包括中央处理器(Central Processing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)、微处理器、微控制器、主处理器、控制器以及专用集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。处理器711用于执行存储器712存储的程序指令。
存储器712可以包括易失性存储器,例如随机存取存储器(Random Access Mmemory,RAM);存储器也可以包括非易失性存储器,例如只读存储器(Read-Only Memory,ROM)、快闪存储器(Flash Memory)、硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD),存储器还可以包括上述种类的存储器的组合。存储器712可以采用集中式存储,也可以采用分布式存储,此处不作具体限定。可以理解的是,存储器712用于存储计算机程序,例如:计算机程序指令等。在本申请实施例中,存储器712可以向处理器711提供指令和数据。
通信接口713可以为有线接口(例如以太网接口)或无线接口(例如蜂窝网络接口或使用无线局域网接口),用于与其他计算机设备或用户进行通信。当通信接口713为有线接口时,通信接口713可以采用网络通讯协议(Transmission Control Protocol/Internet Protocol,TCP/IP)之上的协议族,例如,远程函数调用(Remote Function Call,RFC)协议、简单对象访问协议(Simple Object Access Protocol,SOAP)协议、简单网络管理协议(Simple Network Management Protocol,SNMP)、公共对象请求代理体系结构协议(Common Object Request Broker Architecture,CORBA)以及分布式协议等等。当通信接口713为无线接口时,可以根据全球移动通信系统(Global System for Mobile Communication,GSM)或者码分多址(Code Division Multiple Access,CDMA)标准利用蜂窝通信,因此包括用于数据传输的无线调制解调器、电子处理设备、一个或多个数字存储器设备以及双天线。
在本申请实施例中,处理器711、存储器712、通信接口713和总线714可执行本申请实施例提供的代码下载的方法的任一实施例中所描述的实现方式,在此不再赘述。
在本申请的另一实施例中提供一种计算机非易失性可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令被处理器执行时实现本申请提供的代码下载的方法的任一实施例中所描述的实现方式,在此不再赘述。
所述计算机非易失性可读存储介质可以是前述任一实施例所述的终端的内部存储单元, 例如终端的硬盘或内存。所述计算机可读存储介质也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述计算机可读存储介质还可以既包括所述终端的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述终端所需的其他程序和数据。所述计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法及装置,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本申请实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (20)

  1. 一种代码下载的方法,其特征在于,包括:
    接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识;
    根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系;
    对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含所述非目标模块的代码文件;
    下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码文件和所述目标模块的版本控制信息。
  2. 根据权利要求1所述的方法,其特征在于,所述对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,包括:
    删除所述非目标模块的版本控制信息,获得所述纯目录模式的非目标模块,其中,所述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。
  3. 根据权利要求2所述的方法,其特征在于,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,包括:
    下载所述目标模块最近一次更新的代码以及版本控制信息,其中,所述模块版本控制信息至少包括所述目标模块的历史代码修改记录、所述目标模块在代码仓库中的目录文件夹以及支撑版本控制的组件信息,其中,所述代码仓库是代码版本管理工具的服务器仓库;以及,
    下载所述非目标模块最近一次更新的代码文件。
  4. 根据权利要求3所述的方法,其特征在于,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,包括:
    以第一压缩包的形式下载版本模式的所述目标模块,以及以第二压缩包的形式下载所述纯目录模式的非目标模块,其中,所述第一压缩包的无损质量高于所述第二压缩包的无损质量,并且,所述第一压缩包的压缩率低于所述第二压缩包的压缩率;或者,
    以无压缩的形式下载所述版本模式的所述目标模块,以压缩包的形式下载所述纯目录模式的非目标模块。
  5. 根据权利要求4所述的方法,其特征在于,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块之后,所述方法还包括:
    接收代码更新请求,其中,所述代码更新请求包括所述目标模块的标识、修改后的目标模块的代码以及更新内容标题;
    根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中;
    在所述本地代码库与所述代码仓库是连接状态的情况下,将所述本地代码库中的所述修改后的目标模块的代码,存储到代码仓库中所述目标模块所属的的目录文件夹;
    存储所述目标模块的更新时间以及所述更新内容标题。
  6. 根据权利要求1-5所述的方法,其特征在于,所述方法应用于电子设备,所述电子设备中安装有代码版本管理工具,代码下载脚本配置于所述代码版本管理工具中,所述接收代码下载请求之前,所述方法还包括:
    在用户鼠标的左键或者右键在所述代码版本工具的界面中拉选所述目标模块的名称的情况下,所述代码下载脚本在所述电子设备的显示屏幕中显示一悬浮窗口,其中,所述悬浮窗口至少包括代码下载按钮、代码上传按钮、所述目标模块最近一次更新的时间以及所述更新内容标题;
    在用户触发所述代码下载按钮的情况下,所述代码下载脚本获取用户触发的所述代码下载请求,其中,所述代码下载请求包括所述目标模块的标识;
    所述代码下载脚本向所述代码版本管理工具转发所述代码下载请求;
    所述接收代码下载请求,包括:
    所述代码版本管理工具接收所述代码下载请求。
  7. 根据权利要求6所述的方法,其特征在于,
    所述对所述非目标模块进行模式转换,得到纯目录模式的非目标模块包括:
    所述代码下载脚本向所述代码版本管理工具发送模式切换命令,所述代码版本管理工具执行所述模式切换命令,将所述非目标模块转换为纯目录模式的模块。
  8. 根据权利要求6所述的方法,其特征在于,所述下载版本模式的所述目标模块以及所述纯目录模式的非目标模块包括:
    所述代码下载脚本向所述代码版本管理工具发送代码下载命令,所述代码版本管理工具执行所述代码下载命令,下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。
  9. 根据权利要求6所述的方法,其特征在于,所述根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中包括:
    所述代码下载脚本向所述代码版本管理工具发送代码提交命令,所述代码版本管理工具执行所述代码提交命令,通过调用所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中。
  10. 一种代码下载的装置,其特征在于,包括:
    接收单元,所述接收单元用于接收代码下载请求,其中,所述代码下载请求携带待下载的目标模块的标识;
    确定单元,所述确定单元用于根据所述目标模块的标识,将模块数据表中除所述目标模块之外的模块确定为非目标模块,其中,所述模块数据表存储有模块标识与模块之间的映射关系;
    转换单元,所述转换单元用于对所述非目标模块进行模式转换,得到纯目录模式的非目标模块,其中,下载所述纯目录模式的非目标模块获得的下载文件只包含非目标模块的代码;
    下载单元,所述下载单元用于下载版本模式的所述目标模块以及所述纯目录模式的非目标模块,其中,下载所述版本模式的目标模块获得的下载文件包含所述目标模块的代码和所述目标模块的版本控制信息。
  11. 根据权利要求10所述的装置,其特征在于,所述转换单元用于删除所述非目标模块的版本控制信息,获得所述纯目录模式的非目标模块,其中,所述纯目录模式的非目标模块的包含所述非目标模块最近一次更新的代码文件。
  12. 根据权利要求11所述的装置,其特征在于,所述下载单元用于:
    下载所述目标模块最近一次更新的代码以及版本控制信息,其中,所述模块版本控制信息至少包括所述目标模块的历史代码修改记录、所述目标模块在代码仓库中的目录文件夹以及支撑版本控制的组件信息,其中,所述代码仓库是代码版本管理工具的服务器仓库;以及,下载所述非目标模块最近一次更新的代码文件。
  13. 根据权利要求12所述的装置,其特征在于,所述下载单元用于:以第一压缩包的形式下载版本模式的所述目标模块,以及以第二压缩包的形式下载所述纯目录模式的非目标模块,其中,所述第一压缩包的无损质量高于所述第二压缩包的无损质量,并且,所述第一压缩包的压缩率低于所述第二压缩包的压缩率;或者,
    以无压缩的形式下载所述版本模式的所述目标模块,以压缩包的形式下载所述纯目录 模式的非目标模块。
  14. 根据权利要求13所述的装置,其特征在于,所述装置还包括提交单元,所述接收单元还用于在所述下载单元下载版本模式的所述目标模块以及所述纯目录模式的非目标模块之后,接收代码更新请求,其中,所述代码更新请求包括所述目标模块的标识、修改后的目标模块的代码以及更新内容标题;
    所述提交单元用于根据所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中;
    所述提交单元用于在所述本地代码库与所述代码仓库是连接状态的情况下,将所述本地代码库中的所述修改后的目标模块的代码,存储到代码仓库中所述目标模块所属的的目录文件夹;
    所述提交单元用于存储所述目标模块的更新时间以及所述更新内容标题。
  15. 根据权利要求10-14所述的装置,其特征在于,所述装置应用于电子设备,所述电子设备中安装有代码版本管理工具,代码下载脚本配置于所述代码版本管理工具中,所述装置还包括显示单元,所述显示单元用于在所述接收单元所述接收代码下载请求之前,在用户鼠标的左键或者右键在所述代码版本工具的界面中拉选所述目标模块的名称的情况下,通过所述代码下载脚本在所述电子设备的显示屏幕中显示一悬浮窗口,其中,所述悬浮窗口至少包括代码下载按钮、代码上传按钮、所述目标模块最近一次更新的时间以及所述更新内容标题;
    所述显示单元还用于在用户触发所述代码下载按钮的情况下,通过所述代码下载脚本获取用户触发的所述代码下载请求,其中,所述代码下载请求包括所述目标模块的标识;
    所述代码下载脚本向所述代码版本管理工具转发所述代码下载请求;
    所述接收单元用于通过所述代码版本管理工具接收所述代码下载请求。
  16. 根据权利要求15所述的装置,其特征在于,所述转换单元用于通过所述代码下载脚本向所述代码版本管理工具发送模式切换命令,所述代码版本管理工具执行所述模式切换命令,将所述非目标模块转换为纯目录模式的模块。
  17. 根据权利要求16所述的装置,其特征在于,所述下载单元用于通过所述代码下载脚本向所述代码版本管理工具发送代码下载命令,所述代码版本管理工具执行所述代码下载命令,下载版本模式的所述目标模块以及所述纯目录模式的非目标模块。
  18. 根据权利要求17所述的装置,其特征在于,所述提交单元用于通过所述代码下载脚本向所述代码版本管理工具发送代码提交命令,所述代码版本管理工具执行所述代码提交命令,通过调用所述支撑版本控制的组件信息,将所述修改后的目标模块的代码存储在本地代码库中。
  19. 一种电子设备,其特征在于,所述电子设备包括处理器和存储器;所述存储器用于存储指令;所述处理器用于调用存储器中的指令,执行如上权利要求1至9中任一项所述方法。
  20. 一种计算机非易失性可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行以实现权利要求1至9任一项所述的方法。
PCT/CN2019/120963 2019-05-20 2019-11-26 代码下载的方法、装置、电子设备及计算机存储介质 WO2020233058A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201910420378.XA CN110231945A (zh) 2019-05-20 2019-05-20 代码下载的方法、装置、电子设备及计算机存储介质
CN201910420378.X 2019-05-20

Publications (1)

Publication Number Publication Date
WO2020233058A1 true WO2020233058A1 (zh) 2020-11-26

Family

ID=67861437

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2019/120963 WO2020233058A1 (zh) 2019-05-20 2019-11-26 代码下载的方法、装置、电子设备及计算机存储介质

Country Status (2)

Country Link
CN (1) CN110231945A (zh)
WO (1) WO2020233058A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650530A (zh) * 2020-12-31 2021-04-13 五八有限公司 多类库集成方法、装置、电子设备及可读存储介质
CN112783515A (zh) * 2021-02-08 2021-05-11 腾讯科技(深圳)有限公司 插件的控制方法和装置、存储介质
CN112988177A (zh) * 2021-04-16 2021-06-18 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110231945A (zh) * 2019-05-20 2019-09-13 深圳壹账通智能科技有限公司 代码下载的方法、装置、电子设备及计算机存储介质
CN111367510B (zh) * 2020-02-24 2024-03-19 腾讯音乐娱乐科技(深圳)有限公司 一种安卓功能模块开发的方法及装置
CN112579098B (zh) * 2020-12-25 2024-02-06 平安银行股份有限公司 软件发布方法、装置、电子设备及可读存储介质
CN112631652A (zh) * 2020-12-29 2021-04-09 微医云(杭州)控股有限公司 操作指令响应方法、装置、设备和存储介质
CN113590186A (zh) * 2021-09-29 2021-11-02 广州嘉为科技有限公司 一种根据权限控制客户端下载代码提交历史的方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043656A (zh) * 2011-01-20 2011-05-04 宇龙计算机通信科技(深圳)有限公司 软件管理方法、软件管理服务器
CN102902558A (zh) * 2012-09-11 2013-01-30 新浪网技术(中国)有限公司 项目脚本文件更新系统和方法、脚本文件合并方法和装置
US20130290929A1 (en) * 2012-03-29 2013-10-31 Lg Cns Co., Ltd. Method of managing script, server performing the same and storage media storing the same
CN107463422A (zh) * 2017-07-20 2017-12-12 阿里巴巴集团控股有限公司 代码部署方法及装置、电子设备
CN110231945A (zh) * 2019-05-20 2019-09-13 深圳壹账通智能科技有限公司 代码下载的方法、装置、电子设备及计算机存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043656A (zh) * 2011-01-20 2011-05-04 宇龙计算机通信科技(深圳)有限公司 软件管理方法、软件管理服务器
US20130290929A1 (en) * 2012-03-29 2013-10-31 Lg Cns Co., Ltd. Method of managing script, server performing the same and storage media storing the same
CN102902558A (zh) * 2012-09-11 2013-01-30 新浪网技术(中国)有限公司 项目脚本文件更新系统和方法、脚本文件合并方法和装置
CN107463422A (zh) * 2017-07-20 2017-12-12 阿里巴巴集团控股有限公司 代码部署方法及装置、电子设备
CN110231945A (zh) * 2019-05-20 2019-09-13 深圳壹账通智能科技有限公司 代码下载的方法、装置、电子设备及计算机存储介质

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650530A (zh) * 2020-12-31 2021-04-13 五八有限公司 多类库集成方法、装置、电子设备及可读存储介质
CN112783515A (zh) * 2021-02-08 2021-05-11 腾讯科技(深圳)有限公司 插件的控制方法和装置、存储介质
CN112783515B (zh) * 2021-02-08 2023-08-25 腾讯科技(深圳)有限公司 插件的控制方法和装置、存储介质
CN112988177A (zh) * 2021-04-16 2021-06-18 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端
CN112988177B (zh) * 2021-04-16 2023-08-01 腾讯科技(深圳)有限公司 应用安装包的发布、应用程序的运行方法、服务器及终端

Also Published As

Publication number Publication date
CN110231945A (zh) 2019-09-13

Similar Documents

Publication Publication Date Title
WO2020233058A1 (zh) 代码下载的方法、装置、电子设备及计算机存储介质
US11531535B2 (en) Firmware upgrade method and apparatus, and terminal
WO2017088388A1 (zh) 应用的sdk的升级方法及系统
US20220052866A1 (en) Smart home system control method and apparatus, electronic device
CN108536452B (zh) 一种嵌入式设备及其系统软件升级方法、系统和终端
CN112306968B (zh) 场景建立方法和装置
CN110109628B (zh) 分布式存储系统的数据重建方法、装置、设备及存储介质
WO2021238301A1 (zh) 一种应用更新方法、装置、设备及介质
CN113656005B (zh) 应用组件库构建方法、应用组件配置方法及相关装置
CN111770153A (zh) 一种对象下载方法、装置及电子设备和存储介质
CN111736950A (zh) 一种虚拟机的加速器资源添加方法及相关装置
CN113157658B (zh) 客户端日志收集分发方法、装置及计算机设备
CN114546588A (zh) 任务的部署方法、装置、存储介质及电子装置
WO2024007800A1 (zh) 云终端系统升级方法、装置、云终端和存储介质
CN115129574A (zh) 一种代码测试方法和装置
CN111131373B (zh) 呼吸机数据同步系统、方法、装置及存储介质
US20210072870A1 (en) Generating a customized organizatioal structure for uploading content to a cloud-based storage system
WO2023060893A1 (zh) 存储空间管理方法、装置、设备及存储介质
CN106681761B (zh) 一种交互式升级的方法及系统
CN112367205B (zh) 一种对http调度请求的处理方法及调度系统
CN114201234A (zh) 一种文件处理方法、装置、系统、设备及存储介质
CN113934437A (zh) 云手机安装应用的方法、系统和客户端云手机
CN113641641A (zh) 文件存储服务的切换方法、切换系统、设备及存储介质
CN109597774B (zh) 一种存储设备功能的控制方法、装置及设备
CN110381385B (zh) 一种基于web的聚合电视物联平台智能场景编辑方法

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: 19930048

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19930048

Country of ref document: EP

Kind code of ref document: A1

32PN Ep: public notification in the ep bulletin as address of the adressee cannot be established

Free format text: NOTING OF LOSS OF RIGHTS PURSUANT TO RULE 112(1) EPC (EPO FORM 1205 DATED 18/03/2022)

122 Ep: pct application non-entry in european phase

Ref document number: 19930048

Country of ref document: EP

Kind code of ref document: A1