US2013159365A1PendingUtilityA1

Using Distributed Source Control in a Centralized Source Control Environment

37
Assignee: BOCTOR VICTORPriority: Dec 16, 2011Filed: Dec 16, 2011Published: Jun 20, 2013
Est. expiryDec 16, 2031(~5.4 yrs left)· nominal 20-yr term from priority
G06F 16/273G06F 8/71G06F 16/1844G06F 16/178G06F 16/162G06F 16/116
37
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method is presented for using a distributed source control system with a centralized source control system. A first set of files is obtained from a source control repository and stored on a first electronic computing device. The first set of files comprises all or part of a code base in the centralized source control system. A request is received for at least part of the code base from a second electronic computing device in a distributed source control system. As a result of the request, at least a part of the first set of files is sent to the second electronic computing device. A change set for the first set of files is received from the second electronic computing device. The change set is processed to be in a format compatible with the source control repository. The change set is submitted to the source control repository.

Claims

exact text as granted — not AI-modified
1 . A method for using a distributed source control system with a centralized source control system, the method comprising:
 on a first electronic computing device, obtaining a first set of one or more files from a first source control repository, the first set of files comprising all or part of a code base in the centralized source control system, the first source control repository being a source control repository in a first centralized source control system;   storing the first set of files on the first electronic computing device;   receiving a request for at least part of the code base from a second electronic computing device, the second electronic computing device being an electronic computing device in a first distributed source control system;   as a result of the request, sending the at least part of the first set of files to the second electronic computing device;   receiving a second set of one or more files from the second electronic computing device, the second set of one or more files being a change set for the first set of files; and   processing the change set so that the change set is in a format compatible with the first source control repository, the change set being processed in a change set check-in module stored on the first electronic computing device; and   when the change set is in a format compatible with the first source control repository, submitting the change set to the first source control repository.   
     
     
         2 . The method of  claim 1 , further comprising periodically obtaining updates from the first source control repository for one or more files of the first set of files and storing the updates on the first electronic computing device. 
     
     
         3 . The method of  claim 1 , wherein the change set identifies a centralized source control system to which the change set is to be submitted. 
     
     
         4 . The method of  claim 1 , wherein the change set includes a manifest that summarizes changes included in the change set. 
     
     
         5 . The method of  claim 1 , wherein the change set includes additions and deletions to the first set of files. 
     
     
         6 . The method of  claim 1 , wherein the change set includes versioning information. 
     
     
         7 . The method of  claim 1 , wherein the change set includes source code changes from one or more source code branches not included in the first set of files. 
     
     
         8 . The method of  claim 7 , wherein at least one of the source code branches is a feature branch, the feature branch comprising one or more software features or one or more software bug fixes. 
     
     
         9 . The method of  claim 1 , wherein the second set of one of more files includes a zip file. 
     
     
         10 . The method of  claim 1 , wherein the second set of one or more files includes an XML file. 
     
     
         11 . The method of  claim 1 , wherein the second set of one or more files includes a script. 
     
     
         12 . The method of  claim 1 , wherein the first source control repository resides on the first electronic computing device. 
     
     
         13 . The method of  claim 1 , further comprising:
 sending the at least part of the first set of files to a third electronic computing device, the third electronic computing device being part of a second distributed source control system;   receiving a third set of one or more files from the third electronic computing device, the third set of one or more files being a second change set for the first set of files;   processing the second change set so that the second change set is in a format compatible with the first source control repository; and   when the second change set is in a format compatible with the first source control repository, submitting the second change set to the first source control repository.   
     
     
         14 . A first electronic computing device comprising:
 a processing unit; and   system memory, the system memory including instructions that, when executed by the processing unit, cause the first electronic computing device to:
 obtain a first set of one or more files from a first source control repository, the first source control repository being a source control repository in a centralized source control system; 
 store the first set of files on the first electronic computing device; 
 receive a request for the first set of files from a second electronic computing device, the second electronic computing device being an electronic computing device in a first distributed source control system; 
 as a result of the request, send the first set of files to the second electronic computing device; 
 receive a second set of one or more files from the second electronic computing device, the second set of one or more files being a change set for the first set of files; and 
 process the change set so that the change set is in a format compatible with the first source control repository, the change set being processed in a change set check-in module stored on the first electronic computing device; and 
 when the change set is in a format compatible with the first source control repository, submit the change set to the first source control repository. 
   
     
     
         15 . The first electronic computing device of  claim 14 , wherein the first electronic computing device supports a hybrid model, the hybrid model permitting source code check-out and check-in from a first client computer that is part of the centralized source control system and from a second client computer that is part of the distributed source control system. 
     
     
         16 . The first electronic computing device of  claim 14 , further comprising periodically obtaining updates from the first source control repository for one or more files of the first set of files and storing the updates on the first electronic computing device. 
     
     
         17 . The method of  claim 1 , wherein the change set identifies a centralized source control system to which the change set is to be submitted. 
     
     
         18 . The first electronic computing device of  claim 14 , wherein the first source control repository resides on the first electronic computing device. 
     
     
         19 . The first electronic computing device of  claim 14 , further comprising:
 sending the at least part of the first set of files to a third electronic computing device, the third electronic computing device being part of a second distributed source control system;   receiving a third set of one or more files from the third electronic computing device, the third set of one or more files being a second change set for the first set of files;   processing the second change set so that the change set is in a format compatible with the first source control repository; and   when the second change set is in a format compatible with the first source control repository, submitting the second change set to the first source control repository.   
     
     
         20 . A tangible computer readable storage medium comprising instructions that, when executed by an electronic computing device, cause the electronic computing device to:
 obtain a first set of one or more files from a first source control repository, the first source control repository being a source control repository in a centralized source control system;   store the first set of files on a first electronic computing device;   periodically obtain updates from the first source control repository for one or more files of the first set of files and store the updates on the electronic computing device;   receive a request for the first set of files from a second electronic computing device, the second electronic computing device being an electronic computing device in a first distributed source control system;   as a result of the request, send the first set of files to the second electronic computing device;   receive a second set of one or more files from the second electronic computing device, the second set of one or more files being a first change set for the first set of files, the first change set including a manifest that summarizes changes included in the first change set, the first change set including additions and deletions to the first set of files, the first change set including versioning information, the first change set including one or more source code branches not included in the first set of files, at least one of the source code branches being a feature branch, the feature branch comprising one or more software features or one or more software bug fixes;   process the first change set so that the first change set is in a format compatible with the first source control repository, the change set being processed in a change set check-in module stored on the first electronic computing device;   when the first change set is in a format compatible with the first source control repository, submit the first change set to the first source control repository;   send the first set of files to a third electronic computing device, the third electronic computing device being part of a second distributed source control system;   receive a third set of one or more files from the third electronic computing device, the third set of one or more files being a second change set for the first set of files, the second change set including additions and deletions to the first set of files, the second change set including versioning information, the second change set including one or more source code branches not included in the first set of files, at least one of the source code branches being a feature branch, the feature branch comprising one or more software features or one or more software bug fixes;   process the second change set so that the second change set is in a format compatible with the first source control repository; and   when the second change set is in a format compatible with the first source control repository, submitting the second change set to the first source control repository.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.