Distributed code repository with limited synchronization locking
First Claim
Patent Images
1. A system, comprising:
- a hardware processor configured to;
receive a request to change an existing portion of code;
determine whether the request to change the existing portion of code is valid;
in response to determining that the request to change the existing portion of code is valid, distribute the request to a plurality of repositories, wherein the request comprises a new portion of the code;
request the plurality of repositories to approve the request to change the existing portion of code to the new portion;
receive a corresponding vote to approve swapping references from each repository of the plurality of repositories;
determine whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; and
in response to determining that swapping references is approved by the majority of the plurality of repositories, modify the code by swapping an existing reference associated with the code that points to the existing portion with a change reference associated with the code that points to the new portion and unlock the plurality of repositories; and
a memory coupled to the hardware processor and configured to provide the hardware processor with instructions.
2 Assignments
0 Petitions
Accused Products
Abstract
A system for a distributed repository includes an input interface and a processor. The input interface is to receive a request to change a portion of code. The processor is to determine a change reference and an existing reference, indicate to lock one or more repositories, determine whether swapping references is approved by a vote, and in the event that swapping references is approved by a vote, swap the references and indicate to unlock the one or more repositories.
26 Citations
19 Claims
-
1. A system, comprising:
-
a hardware processor configured to; receive a request to change an existing portion of code; determine whether the request to change the existing portion of code is valid; in response to determining that the request to change the existing portion of code is valid, distribute the request to a plurality of repositories, wherein the request comprises a new portion of the code; request the plurality of repositories to approve the request to change the existing portion of code to the new portion; receive a corresponding vote to approve swapping references from each repository of the plurality of repositories;
determine whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; andin response to determining that swapping references is approved by the majority of the plurality of repositories, modify the code by swapping an existing reference associated with the code that points to the existing portion with a change reference associated with the code that points to the new portion and unlock the plurality of repositories; and a memory coupled to the hardware processor and configured to provide the hardware processor with instructions. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16)
-
-
17. A method, comprising:
-
receiving a request to change an existing portion of code; determining, using a hardware processor, whether the request to change the existing portion of code is valid; in response to determining that the request to change the existing portion of code is valid, distributing the request to a plurality of repositories, wherein the request comprises a new portion of the code; requesting the plurality of repositories to approve the request to change the existing portion of code to the new portion; receiving a corresponding vote to approve swapping references from each repository of the plurality of repositories; determining whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; and in response to determining that swapping references is approved by the majority of the plurality of repositories, modifying the code by swapping an existing reference associated with the code that points to the existing portion with a change reference associated with the code that points to the new portion and unlocking the plurality of repositories. - View Dependent Claims (18)
-
-
19. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:
-
receiving a request to change an existing portion of code; determining, using a hardware processor, whether the request to change the existing portion of code is valid; in response to determining that the request to change the existing portion of code is valid, distributing the request to a plurality of repositories, wherein the request comprises a new portion of the code; requesting the plurality of repositories to approve the request to change the existing portion of code to the new portion; receiving a corresponding vote to approve swapping references from each repository of the plurality of repositories; determining whether swapping references is approved by a majority of the plurality of repositories based on the corresponding votes; and in response to determining that swapping references is approved by the majority of the plurality of repositories, modifying the code by swapping an existing reference associated with the code that points to the existing portion with a change reference associated with the code that points to the new portion and unlocking the plurality of repositories.
-
Specification