CN111984306A - WebIDE-based development management method, device and storage medium - Google Patents

WebIDE-based development management method, device and storage medium Download PDF

Info

Publication number
CN111984306A
CN111984306A CN202010855268.9A CN202010855268A CN111984306A CN 111984306 A CN111984306 A CN 111984306A CN 202010855268 A CN202010855268 A CN 202010855268A CN 111984306 A CN111984306 A CN 111984306A
Authority
CN
China
Prior art keywords
code
hosting server
development environment
integrated development
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010855268.9A
Other languages
Chinese (zh)
Inventor
贾天军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shanghai Ruicheng Software Co ltd
Original Assignee
Shanghai Ruicheng Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shanghai Ruicheng Software Co ltd filed Critical Shanghai Ruicheng Software Co ltd
Priority to CN202010855268.9A priority Critical patent/CN111984306A/en
Publication of CN111984306A publication Critical patent/CN111984306A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • G06F16/1774Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Abstract

The invention discloses a development management method based on WebIDE, which comprises the following steps: the integrated development environment sends a project operation request to the code hosting server; the integrated development environment runs on a browser; the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the location of the compilation run is the code hosting server. The invention stores the codes in the server in a centralized way through the integrated development environment of the B/S framework, and the processes of compiling, running and the like are all put on the server to run, thereby reducing the risk of code asset management, quickening the compiling and running speed, and solving the problem that the development management can not be carried out under the B/S framework.

Description

WebIDE-based development management method, device and storage medium
Technical Field
The invention relates to the field of software development management, in particular to a development management method, a development management device and a development management storage medium based on WebIDE.
Background
In the conventional software development management process, for version management, generally, distributed software such as SVN or CVS or VSS is used to manage versions, but the SVN or CVS or VSS has the following disadvantages:
(1) the compiling and running process generally needs to be performed locally, specifically, the code needs to be downloaded to a machine completely, and the machine compiles and runs the code, so that all assets of the software under development are provided on a computer, which is not beneficial to the safety management of company assets;
(2) because of the reason of (1), because not every computer is optimized by the compiling environment, some computers have high compiling speed and some computers have low compiling speed, especially for old computers which are long-lived, the compiling and running speed is not too obvious, and if the compiling and optimizing are carried out for every computer, the cost required by every computer is very high due to different conditions of every computer;
(3) when an integrated development environment running on a browser is used, due to the problem of the safety control authority of the browser, many behaviors based on a C/S (browser/server) architecture cannot be realized under a B/S (browser/server) architecture, so that software development management operation cannot be directly performed by using SVN (singular value decomposition) or CVS (composite value decomposition) or VSS (VSS).
Disclosure of Invention
In order to solve the technical problems that in the traditional software version management technology, such as SVN, CVS, VSS and the like, the centralized storage of a code local machine causes asset management to have risks and cannot be applied to an integrated development environment in a B/S framework, the invention intensively stores the codes in a server through the integrated development environment of the B/S framework, and all processes such as compiling operation and the like are put on the server to operate, thereby reducing the risk of code asset management and solving the technical problem that the development management cannot be carried out under the B/S framework.
The invention provides a development management method based on WebIDE, which comprises the following steps:
the integrated development environment sends a project operation request to the code hosting server;
the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the position of the compiling operation is the code hosting server;
the integrated development environment runs on a browser.
In the technical scheme, in the traditional software development process, the general compiling and running process is carried out on the native machine, the compiling and running result is also displayed on the native machine, on one hand, because the native machines used by different people are different, therefore, the compiling running time required by the computer of some people is relatively short, while the compiling running time required by the computer of some people is extremely long, especially for the computer which is older and younger, the time required by the compiling running is extremely long, in the embodiment, all compiling and running processes are realized on the server, so that on one hand, the computing and running speed of the server is generally much higher than that of the native machine, and on the other hand, because only one device needs to be compiled, the targeted optimization of the compiling speed is much easier than that of a plurality of servers, and the rapid compiling and running can be realized.
Meanwhile, the managed code does not contain a file on the native machine, that is, the code only exists in a browser cache form on the native machine at most, any developer, that is, a software developer cannot or does not need to obtain all codes of software under development through a browser, and can only obtain partial codes, so that compiling and running of the program can be realized.
Preferably, the integrated development environment sends managed code to a code hosting server;
the code hosting server receives and stores the hosted code.
Further preferably, the integrated development environment sending managed code to a code hosting server comprises:
the integrated development environment monitors code updating and submitting operation;
when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server;
after receiving the code updating request, the code hosting server checks whether a code file corresponding to the code updating request is in a locked state according to the code updating request; if so, setting the code file to be in an unlocking state; otherwise, sending a code updating error to the integrated development environment, and ending the method.
Further preferably, the method further comprises the following steps:
the integrated development environment sends a code request to the code hosting server;
the code hosting server sends target code to the integrated development environment according to the code request;
receiving object code by the integrated development environment;
the integrated development environment renders the object code.
Further preferably, the code hosting server sending the object code to the integrated development environment according to the code request comprises:
the code hosting server judges whether the code file corresponding to the code request is in a locking state, and if so, the target code is set to be in a read-only state; otherwise, setting the code file to be in a locking state;
and sending the object code to the integrated development environment.
In the technical scheme, the code files on the code hosting server are locked, so that the problem of development conflict required by the development of an integrated development environment arranged on a browser is solved, the code conflict is avoided by setting strict editing limit, and code rollback is reduced.
Preferably, the integrated development environment further issues a software project creation request to the code hosting server, and the code hosting server creates a software project on the code hosting server according to the project creation request.
Further preferably, the project creation request includes an environment building command, and the code hosting server builds a compiling and running environment according to the environment building command.
Preferably, the method further comprises the following steps: the code hosting server determines whether the integrated development environment is authorized sufficiently.
Further preferably, the permission setting module of the integrated development environment sends a permission setting request to the code hosting server, and the code hosting server sets the developer access permission according to the permission setting request.
In this embodiment, in addition to determining whether the code file is in a locked state, the access right of the developer itself needs to be controlled, for example, when the developer a uses the integrated development environment a, it first needs to make a login request to the server for login, and after the login is completed, the integrated development environment a is used to send the code request to the server according to its development plan, the code hosting server first needs to determine whether the account of the developer a corresponding to the integrated development environment a has the access right of the code file mapped by the code request, and only when the developer a has the access right and the code file is in an unlocked state, the content of the code file will be sent to the integrated development environment a, and similarly, if the account of the developer a only has the access right and does not have the right of editing and updating, its updated behavior is rejected.
The invention also provides a development management device based on WebIDE, which comprises: at least one integrated development environment and a code hosting server; the integrated development environment is disposed on a browser.
The invention also provides a storage medium, wherein a computer program is stored in the storage medium, and the computer program is configured to realize the steps of the WebIDE-based development management method when being called by the processor.
The invention at least comprises the following technical effects:
(1) all codes are concentrated on the server and compiled and run by the server in a unified way, so that the cost required by compiling and optimizing is reduced, and the compiling and running speed is greatly improved;
(2) because the compiling and running processes are all carried out on the server, all codes can be stored in the server in a centralized way, only code segments exist on a local machine of a developer, namely all developers cannot obtain all codes, the asset management of company codes is facilitated, and the asset management risk is reduced;
(3) by locking the code file of the server, version management is realized, version conflict is avoided, and rollback caused by code version problems is reduced;
(4) through the authority management of the developer, the writing and version iteration process of the code is effectively controlled.
Drawings
In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the drawings needed to be used in the description of the embodiments will be briefly introduced below, and it is obvious that the drawings in the following description are only some embodiments of the present invention, and it is obvious for those skilled in the art to obtain other drawings based on these drawings without inventive exercise.
FIG. 1 is a schematic flow chart of example 1 of the present invention;
fig. 2 is a schematic flow chart of embodiment 5 of the present invention.
Detailed Description
In the following description, for purposes of explanation and not limitation, specific details are set forth, such as particular system structures, techniques, etc. in order to provide a thorough understanding of the embodiments of the present application. However, it will be apparent to one skilled in the art that the present application may be practiced in other embodiments that depart from these specific details. In other instances, detailed descriptions of well-known systems, devices, circuits, and methods are omitted so as not to obscure the description of the present application with unnecessary detail.
It will be understood that the terms "comprises" and/or "comprising," when used in this specification and the appended claims, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
For the sake of simplicity, the drawings only schematically show the parts relevant to the present invention, and they do not represent the actual structure as a product. In addition, in order to make the drawings concise and understandable, components having the same structure or function in some of the drawings are only schematically depicted, or only one of them is labeled. In this document, "one" means not only "only one" but also a case of "more than one".
It should be further understood that the term "and/or" as used in this specification and the appended claims refers to and includes any and all possible combinations of one or more of the associated listed items.
In addition, in the description of the present application, the terms "first", "second", and the like are used only for distinguishing the description, and are not intended to indicate or imply relative importance.
In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following description will be made with reference to the accompanying drawings. It is obvious that the drawings in the following description are only some examples of the invention, and that for a person skilled in the art, other drawings and embodiments can be derived from them without inventive effort.
Example 1:
as shown in fig. 1, this embodiment provides a WebIDE-based development management method, including:
s7: the integrated development environment sends a project operation request to the code hosting server;
s8: the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the position of the compiling operation is the code hosting server; the integrated development environment runs on a browser.
In this embodiment, the system includes an integrated development environment running on a browser and a code hosting system running on a code hosting server, and a B/S architecture is formed between the integrated development environment and the code hosting system, where the code hosting system is used to perform version management on a code developed by the integrated development environment, and the browser may be any one of browsers commonly found in the market, and may include any one of Chrome, Edge, Safari, and IE.
In the traditional software development process, the general compiling and running process is carried out on the native machine, the compiling and running result is also displayed on the native machine, on one hand, in the scene of multi-person cooperation, because the native machines used by different people are different, the compiling running time required by the computers of some people is relatively short, the compiling and running time required by computers of some people is extremely long, especially for computers of long ages, the compiling and running time is extremely long, in the embodiment, all compiling and running processes are realized on the server, so that on one hand, the computing and running speed of the server is generally much higher than that of the native machine, and on the other hand, because only one device needs to be compiled, the targeted optimization of the compiling speed is much easier than that of a plurality of servers, and the rapid compiling and running can be realized.
Meanwhile, the managed code does not contain a file on the native machine, that is, the code only exists in a browser cache form on the native machine at most, any developer, that is, a software developer cannot or does not need to obtain all codes of software under development through a browser, and can only obtain partial codes, so that compiling and running of the program can be realized.
Example 2:
the embodiment comprises the following steps: s1: the integrated development environment sends a code request to the code hosting server;
s2-1: the code hosting server judges whether the code file corresponding to the code request is in a locked state, if so, the S2-2 is carried out; otherwise, entering S2-3;
s2-2: the code hosting server sets the target code to be in a read-only state; meanwhile, in the integrated development environment, the object code can be displayed to be only readable and can not be changed.
S2-3: the code hosting server sets the code file to be in a locking state;
s2-4: the code hosting server sends the object code to the integrated development environment;
s3: receiving object code by the integrated development environment;
s4: the integrated development environment renders the object code.
S5-1: when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server;
s5-3: after receiving the code updating request, the code hosting server checks whether the code file corresponding to the code updating request is in a locked state according to the code updating request, if so, the S5-4 is entered, otherwise, the S5-5 is entered;
s5-4: setting the code file to be in an unlocking state;
s5-5: sending a code updating error to the integrated development environment, and ending the method;
s6: the code hosting server receives and stores the hosted code;
s7: the integrated development environment sends a project operation request to the code hosting server;
s8: the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the position of the compiling operation is the code hosting server;
s9: (ii) a The integrated development environment runs on a browser.
In this embodiment, the integrated development environment includes the integrated development environment, a code submission module, and an integrated development environment, where the integrated development environment is equivalent to a controller in an MVC architecture, the code submission module is configured to transmit managed code to a code hosting server, and the integrated development environment is configured to receive a code file sent by the code hosting server.
When the developer A uses the integrated development environment A, firstly, a code request is sent to a code hosting server through the integrated development environment, the code request comprises a project ID and a code file ID, when the code hosting server receives the code request, the project is searched through the project ID, the file is acquired through the file ID, then whether the code file is in a locking state or not is judged, i.e., whether other developers, such as the B developer, are editing the code file through the integrated development environment B on the browser on other computers, if the code file is in a locked state, i.e., the B developer is editing the code file through the integrated development environment B, in order to avoid version synchronization, only the integrated development environment a should be provided with read-only files, and the developer a cannot modify the code files through the integrated development environment a;
when a developer A modifies the code file and submits the code, the developer needs to click a button for submitting the code, when the integrated development environment monitors the click operation of the developer, the code submitting module is informed that the developer A clicks the button, the code submitting module sends a code updating request to the code hosting server, the code updating request comprises the code needing to be submitted and hosted on one hand, and also comprises a project ID and a file ID corresponding to the code on the other hand, the code server finds the corresponding project and finds the corresponding project name according to the project ID, then finds the code file needing to be updated according to the file ID, and then judges the integrity of the lock, namely whether the lock is still in a locked state or not.
Generally speaking, if a program runs normally, since a code needs to be proposed before the code is edited, a code file set on a code hosting server corresponding to a code updating request should be in a locked state, but it cannot be excluded that the code file is not actually in the locked state due to network problems, system Bug and the like, that is, the integrity of a lock is damaged, at this time, a code updating error needs to be sent to the integrated development environment, the method is ended, and an administrator of the code hosting server is notified, so that the administrator can rollback or otherwise operate the code according to a code hosting server running log or other files.
If the lock is good in integrity, the code file is set to be in an unlocking state, and the managed code is stored.
According to the method and the device, the code files on the code hosting server are locked, so that the problem of development conflict required by the development of an integrated development environment arranged on a browser is solved, the code conflict is avoided by setting strict editing limit, and code rollback is reduced.
Example 4:
the embodiment comprises the following steps: s1: the integrated development environment sends a code request to the code hosting server;
s2-0: the code hosting server judges whether the authority of the integrated development environment is enough, if not, the S2-0-1 is carried out;
s2-0-1: the code hosting server sends the information of insufficient authority to the integrated development environment;
s2-1: the code hosting server judges whether the code file corresponding to the code request is in a locked state, if so, the S2-2 is carried out; otherwise, entering S2-3;
s2-2: the code hosting server sets the target code to be in a read-only state;
s2-3: the code hosting server sets the code file to be in a locking state;
s2-4: the code hosting server sends the object code to the integrated development environment;
s3: receiving object code by the integrated development environment;
s4: the integrated development environment renders the object code.
S5-1: when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server;
s5-2: the code hosting server judges whether the authority of the integrated development environment is enough or not, and if not, the code hosting server enters S5-2-1;
s5-2-1: the code hosting server sends the information of insufficient authority to the integrated development environment;
s5-3: after receiving the code updating request, the code hosting server checks whether the code file corresponding to the code updating request is in a locked state according to the code updating request, if so, the S5-4 is entered, otherwise, the S5-5 is entered;
s5-4: setting the code file to be in an unlocking state;
s5-5: sending a code updating error to the integrated development environment, and ending the method;
s6: the code hosting server receives and stores the hosted code;
s7: the integrated development environment sends a project operation request to the code hosting server;
s8: the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the location of the compilation run is the code hosting server.
In this embodiment, in addition to determining whether the code file is in a locked state, the access right of the developer itself needs to be controlled, for example, when the developer a uses the integrated development environment a, it first needs to make a login request to the server for login, and after the login is completed, the integrated development environment a is used to send the code request to the server according to its development plan, the code hosting server first needs to determine whether the account of the developer a corresponding to the integrated development environment a has the access right of the code file mapped by the code request, and only when the developer a has the access right and the code file is in an unlocked state, the content of the code file will be sent to the integrated development environment a, and similarly, if the account of the developer a only has the access right and does not have the right of editing and updating, its updated behavior is rejected.
Example 5:
as shown in fig. 2, the present embodiment includes:
s0-1: the integrated development environment issues a software project creation request to the code hosting server,
s0-2: the code hosting server creates a software project on the code hosting server according to the project creating request; the project creating request comprises an environment building command, and the code hosting server builds a compiling and running environment according to the environment building command; in the step, the environment building is performed at the project building stage, so that the environment building is performed on one machine only, and the environment building is not performed on a plurality of machines, for example, the dependency relationship among jar packages is established.
S0-3: the permission setting module of the integrated development environment sends a permission setting request to the code hosting server;
s0-4: the code hosting server sets developer access permission according to the permission setting request;
s1: the integrated development environment sends a code request to the code hosting server;
s2-1: the code hosting server judges whether the code file corresponding to the code request is in a locked state, if so, the S2-2 is carried out; otherwise, entering S2-3;
s2-2: setting the target code to be in a read-only state;
s2-3: setting the code file to a locked state;
s2-4: sending the object code to the integrated development environment;
s3: receiving object code by the integrated development environment;
s4: the integrated development environment presents the object code;
s5-1: when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server;
s5-3: after receiving the code updating request, the code hosting server checks whether the code file corresponding to the code updating request is in a locked state according to the code updating request, if so, the S5-4 is entered, otherwise, the S5-5 is entered;
s5-4: setting the code file to be in an unlocking state;
s5-5: sending a code updating error to the integrated development environment, and ending the method;
s6: the code hosting server receives and stores the hosted code;
s7: the integrated development environment sends a project operation request to the code hosting server;
s8: the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the location of the compilation run is the code hosting server.
In this embodiment, a developer first sends a software project creation request to a code hosting server through an integrated development environment, the code hosting server creates a corresponding project on the code hosting server according to the software project creation request, and configures the development environment of the project on the code hosting server according to a configuration file included in the software project creation request, so that the project can be compiled and run normally on the code hosting server.
And then the project principal needs to configure the team and grant the authority to the developer who needs to participate in the project research and development, specifically, the project principal sends a developer authority setting request to a code hosting server by using the integrated development environment, the code hosting server grants the authority to the account corresponding to the developer who needs to participate in the project research and development according to the developer authority setting request, and when the related developer develops, the related developer only needs to log in the account.
When the developer A uses the integrated development environment A, firstly, a code request is sent to a code hosting server through the integrated development environment, the code request comprises a project ID and a code file ID, when the code hosting server receives the code request, the project is searched through the project ID, the file is acquired through the file ID, then whether the code file is in a locking state or not is judged, i.e., whether other developers, such as the B developer, are editing the code file through the integrated development environment B on the browser on other computers, if the code file is in a locked state, i.e., the B developer is editing the code file through the integrated development environment B, in order to avoid version synchronization, only the integrated development environment a should be provided with read-only files, and the developer a cannot modify the code files through the integrated development environment a;
when a developer A modifies the code file and submits the code, the developer needs to click a button for submitting the code, when the integrated development environment monitors the click operation of the developer, the code submitting module is informed that the developer A clicks the button, the code submitting module sends a code updating request to the code hosting server, the code updating request comprises the code needing to be submitted and hosted on one hand, and also comprises a project ID and a file ID corresponding to the code on the other hand, the code server finds the corresponding project and finds the corresponding project name according to the project ID, then finds the code file needing to be updated according to the file ID, and then judges the integrity of the lock, namely whether the lock is still in a locked state or not.
Generally speaking, if a program runs normally, a code file set on a code hosting server corresponding to a code updating request should be in a locked state, but it cannot be excluded that the code file is not actually in the locked state due to network problems, system Bug and the like, that is, the integrity of a lock is damaged, at this time, a code updating error needs to be sent to the integrated development environment, the method is ended, and an administrator of the code hosting server is notified, so that the administrator rolls back or otherwise operates the code according to a code hosting server running log or other files. If the lock is good in integrity, the code file is set to be in an unlocking state, and the managed code is stored.
And then sending a compiling and running request to a code hosting server through a compiling and running button arranged on the integrated development environment, compiling and running the code hosting server according to the compiling and running request by the code hosting server, sending the obtained compiling and running result to the integrated development environment, and displaying the corresponding running result by the integrated development environment.
Example 6:
the embodiment provides a WebIDE-based development management apparatus, including: at least one integrated development environment and a code hosting server; the integrated development environment is arranged on a browser;
the integrated development environment sends a software project creation request to the code hosting server, and the code hosting server creates a software project on the code hosting server according to the project creation request; the project creating request comprises an environment building command, and the code hosting server builds a compiling and running environment according to the environment building command; the permission setting module of the integrated development environment sends a permission setting request to the code hosting server; the code hosting server sets developer access permission according to the permission setting request; the integrated development environment sends a code request to the code hosting server; the code hosting server judges whether the code file corresponding to the code request is in a locked state, and if so, the target code is set to be in a read-only state; otherwise, setting the code file to be in a locking state; sending the object code to the integrated development environment; receiving object code by the integrated development environment; the integrated development environment presents the object code; when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server; after receiving the code updating request, the code hosting server checks whether a code file corresponding to the code updating request is in a locked state or not according to the code updating request, if so, the code file is set to be in an unlocked state, otherwise, a code updating error is sent to the integrated development environment, and the method is ended; the code hosting server receives and stores the hosted code; the integrated development environment sends a project operation request to the code hosting server; the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the location of the compilation run is the code hosting server.
In this embodiment, the method is mainly applicable to a situation of collaborative development of multiple integrated development environments, in a scenario of multi-person collaboration, each person performs writing development through the integrated development environment used by each person, a project principal first sends a software project creation request to a code hosting server through the integrated development environment, the code hosting server creates a corresponding project on the code hosting server according to the software project creation request, and configures the development environment of the project on the code hosting server according to a configuration file included in the software project creation request, so that the project can be compiled and run normally on the code hosting server.
And then the project principal needs to configure the team and grant the authority to the developer who needs to participate in the project research and development, specifically, the project principal sends a developer authority setting request to a code hosting server by using the integrated development environment, the code hosting server grants the authority to the account corresponding to the developer who needs to participate in the project research and development according to the developer authority setting request, and when the related developer develops, the related developer only needs to log in the account.
Meanwhile, through the setting of the lock, when the developer A uses the integrated development environment A, firstly, a code request is sent to a code hosting server through the integrated development environment, the code request comprises a project ID and a code file ID, when the code hosting server receives the code request, the project is searched through the project ID, the file is acquired through the file ID, then whether the code file is in a locking state or not is judged, i.e., whether other developers, such as the B developer, are editing the code file through the integrated development environment B on the browser on other computers, if the code file is in a locked state, i.e., the B developer is editing the code file through the integrated development environment B, in order to avoid version synchronization, only the integrated development environment a should be provided with read-only files, and the developer a cannot modify the code files through the integrated development environment a;
meanwhile, the use condition of the code file can be directly displayed on the integrated development environment, and when the code file is required to be used, the code cannot be modified by using the integrated development environment, so that the code is locked.
When a developer A modifies the code file and submits the code, the developer needs to click a button for submitting the code, when the integrated development environment monitors the click operation of the developer, the code submitting module is informed that the developer A clicks the button, the code submitting module sends a code updating request to the code hosting server, the code updating request comprises the code needing to be submitted and hosted on one hand, and also comprises a project ID and a file ID corresponding to the code on the other hand, the code server finds the corresponding project and finds the corresponding project name according to the project ID, then finds the code file needing to be updated according to the file ID, and then judges the integrity of the lock, namely whether the lock is still in a locked state or not.
Generally speaking, if a program runs normally, a code file set on a code hosting server corresponding to a code updating request should be in a locked state, but it cannot be excluded that the code file is not actually in the locked state due to network problems, system Bug and the like, that is, the integrity of a lock is damaged, at this time, a code updating error needs to be sent to the integrated development environment, and an administrator of the code hosting server is notified, so that the administrator rolls back or otherwise operates the code according to a code hosting server running log or other files. If the lock is good in integrity, the code file is set to be in an unlocking state, and the managed code is stored.
And then sending a compiling and running request to a code hosting server through a compiling and running button arranged on the integrated development environment, compiling and running the code hosting server according to the compiling and running request by the code hosting server, sending the obtained compiling and running result to the integrated development environment, and displaying the corresponding running result by the integrated development environment.
Example 7:
the present embodiment provides a storage medium having stored therein a computer program configured to implement the steps of a WebIDE-based development management method according to any one of embodiments 1 to 5 when invoked by a processor.
While preferred embodiments of the present invention have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all such alterations and modifications as fall within the scope of the invention.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present invention without departing from the spirit and scope of the invention. Thus, if such modifications and variations of the present invention fall within the scope of the claims of the present invention and their equivalents, the present invention is also intended to include such modifications and variations.

Claims (10)

1. A WebIDE-based development management method is characterized by comprising the following steps:
the integrated development environment sends a project operation request to the code hosting server; the integrated development environment runs on a browser;
the code hosting server searches a corresponding hosting item according to the item operation request, and compiles and operates the searched hosting item to generate an item operation result; the location of the compilation run is the code hosting server.
2. The WebIDE-based development management method of claim 1, wherein the integrated development environment sends managed code to a code hosting server;
the code hosting server receives and stores the hosted code.
3. The WebIDE-based development management method of claim 2, wherein sending managed code to a code hosting server by the integrated development environment comprises:
the integrated development environment monitors code updating and submitting operation;
when the integrated development environment monitors a code update submission operation, the integrated development environment sends a code update request to the code hosting server;
the code hosting server receiving and storing the hosted code further comprises:
and after receiving the code updating request, the code hosting server sets the code file to be in an unlocked state.
4. The WebIDE-based development management method of claim 1, further comprising:
the integrated development environment sends a code request to the code hosting server;
the code hosting server sends target code to the integrated development environment according to the code request;
receiving object code by the integrated development environment;
the integrated development environment renders the object code.
5. The WebIDE-based development management method of claim 4, wherein the code hosting server sending target code to the integrated development environment according to the code request comprises:
the code hosting server judges whether the code file corresponding to the code request is in a locking state, and if so, the target code is set to be in a read-only state; otherwise, setting the code file to be in a locking state;
and sending the object code to the integrated development environment.
6. The WebIDE-based development management method of claim 1, further comprising,
the integrated development environment issues a software project creation request to the code hosting server, and the code hosting server creates a software project on the code hosting server according to the project creation request.
7. The WebIDE-based development management method of claim 6, further comprising: the project creating request comprises an environment building command, and the code hosting server builds a compiling and running environment according to the environment building command.
8. The WebIDE-based development management method of claim 3 or claim 5, wherein the code hosting server determines whether the rights of the integrated development environment are sufficient, and if not, denies the request to execute the integrated development environment:
and the permission setting module of the integrated development environment sends a permission setting request to the code hosting server, and the code hosting server sets the access permission of a developer according to the permission setting request.
9. A WebIDE-based development management apparatus, comprising: a code hosting server and at least one integrated development environment; the integrated development environment is disposed on a browser.
10. A storage medium having stored thereon a computer program configured to, when invoked by a processor, perform the steps of a WebIDE-based development management method of any of claims 1-8.
CN202010855268.9A 2020-08-24 2020-08-24 WebIDE-based development management method, device and storage medium Pending CN111984306A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010855268.9A CN111984306A (en) 2020-08-24 2020-08-24 WebIDE-based development management method, device and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010855268.9A CN111984306A (en) 2020-08-24 2020-08-24 WebIDE-based development management method, device and storage medium

Publications (1)

Publication Number Publication Date
CN111984306A true CN111984306A (en) 2020-11-24

Family

ID=73442503

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010855268.9A Pending CN111984306A (en) 2020-08-24 2020-08-24 WebIDE-based development management method, device and storage medium

Country Status (1)

Country Link
CN (1) CN111984306A (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844299A (en) * 2017-12-01 2018-03-27 浪潮软件股份有限公司 A kind of implementation method of Web application development tools
CN110750243A (en) * 2019-09-20 2020-02-04 中国联合网络通信集团有限公司 Project code development method and system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844299A (en) * 2017-12-01 2018-03-27 浪潮软件股份有限公司 A kind of implementation method of Web application development tools
CN110750243A (en) * 2019-09-20 2020-02-04 中国联合网络通信集团有限公司 Project code development method and system

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ANLIVEN: "VSC - VS Code 运行Web IDE", 《HTTPS://WWW.CNBLOGS.COM/ANLIVEN/P/13363811.HTML》 *
DIMITRIE HOEKSTRA: "Meet the GitLab Web IDE _ GitLab", 《HTTPS://ABOUT.GITLAB.COM/BLOG/2018/06/15/INTRODUCING-GITLAB-S-INTEGRATED-DEVELOPMENT-ENVIRONMENT/》 *
WAGBACKMACHINE: "WebIDE 支持微信小程序开发", 《HTTPS://BLOG.CODING.NET/BLOG/MINI_PROGRAM》 *
厸清扬: "【新手玩转云计算】打造自己的Web IDE(在线开发环境)", 《HTTPS://WWW.CNBLOGS.COM/LINQINGYANG/P/12484625.HTML?IVK_SA=1024320U》 *

Similar Documents

Publication Publication Date Title
EP1225508A1 (en) A universal software application
US10296305B2 (en) Method and device for the automated production and provision of at least one software application
CN101384995A (en) Administration automation in application servers
US11650813B2 (en) Enhanced product development efficiency, communication, and/or security through component-based event generation and/or subscription
US20200104107A1 (en) Systems and methods for deploying software products to environments
Debreceni et al. Enforcing fine-grained access control for secure collaborative modelling using bidirectional transformations
WO2009050167A1 (en) A method, apparatus and computer program for migrating records in a database from a source database schema to a target database schema
Ritchie Practical Microsoft Visual Studio 2015
Bushehrian et al. A workflow-based failure recovery in web services composition
Ardagna et al. Dependability certification of services: a model-based approach
KR101599470B1 (en) Apparatus, system, method and readable recording medium of releasing a build file
CN111984306A (en) WebIDE-based development management method, device and storage medium
Arcaini et al. A DSL for MAPE patterns representation in self-adapting systems
US20120166405A1 (en) Changeability And Transport Release Check Framework
Linh Building websites with Laravel and VueJS
do Prado et al. Securing FrameWeb: Supporting Role-based Access Control in a Framework-based Design Method for Web Engineering
Le E-Commercial Full Stack Web Application Development: with React, Redux, NodeJS, and MongoDB
Portwood II Mastering Yii
Ray et al. Using semantic correctness in multidatabases to achieve local autonomy, distribute coordination, and maintain global integrity
Swinbank Publishing to ADF
Joshi et al. ASP. NET Core MVC
Bien et al. Graphical user interface variability architecture pattern
Sadeghian Boroujeni Development of a shared authentication system–a microservice approach
Ramsauer OSS architecture for mixed-criticality systems–a dual view from a software and system engineering perspective
Guerrero et al. Security model in XSA

Legal Events

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