Method and apparatus for re-introducing version control
First Claim
1. A method of maintaining version control for an initial version S1 of software stored in a memory, where the initial version has been modified to yield a modified initial version S2 of the software that is also stored in the memory, the method comprising the steps, performed by a data processing system, of:
- creating, in the memory, a source tree containing the initial version S1 and the modified initial version S2 of the software;
receiving a new version S3 of the software;
determining a difference between the new version S3 and the initial version S1;
integrating the difference between the new version and the initial version (S3−
S1) into a copy of the initial version S1′
to yield an integrated copy; and
incorporating the integrated copy into a copy of the modified initial version S2 to yield a modified new version S4, while still retaining the initial version S1 and its modified initial version S2.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for maintaining source control for successive versions of software where modifications are made to an initial version that are not included in the successive versions. When the initial version is received, it is modified and both the initial version and the modified initial version are placed under source control in the form of a source tree. When a new version of the software is received, the invention determines differences between the initial version and the new version and creates a record of differences between the initial version and the new version. The differences are integrated into a copy of the initial version and are then incorporated to the modified initial version, which is then incorporated to a modified initial version to yield a modified new version. In some embodiment of the present invention, the original source tree is retained in case modifications are again made to the initial version.
-
Citations
9 Claims
-
1. A method of maintaining version control for an initial version S1 of software stored in a memory, where the initial version has been modified to yield a modified initial version S2 of the software that is also stored in the memory, the method comprising the steps, performed by a data processing system, of:
-
creating, in the memory, a source tree containing the initial version S1 and the modified initial version S2 of the software;
receiving a new version S3 of the software;
determining a difference between the new version S3 and the initial version S1;
integrating the difference between the new version and the initial version (S3−
S1) into a copy of the initial version S1′
to yield an integrated copy; and
incorporating the integrated copy into a copy of the modified initial version S2 to yield a modified new version S4, while still retaining the initial version S1 and its modified initial version S2. - View Dependent Claims (2, 3, 4, 5, 6)
checking out a file of the initial version S1 from the source tree; and
checking in a corresponding file of the new version S3 into the source tree, so that the corresponding file of new version S3 is placed in the source tree as a modification of the file of the initial version S1.
-
-
4. The method of claim 1, wherein the integrating step includes the step of reparenting the modified initial version S2 and the new version S3 with the copy of the initial version S1′
- .
-
5. The method of claim 1, wherein, after performance of the incorporating step, there exists in the memory a first source tree having the initial version S1 as a root, and a second source tree having the integrated copy as a root.
-
6. The method of claim 1, wherein the difference determining step includes the steps, performed for each file in the new version S3, of:
-
checking out a file of S1 that corresponds to a current S3 file;
copying the current S3 file over the checked out file; and
checking in the file created by copying over, so that the file created by copying over is placed in the source tree as a child of the initial file S1.
-
-
7. An apparatus for maintaining version control for an initial version S1 of software, where the initial version has been modified to yield a modified initial version S2 of the software, the apparatus comprising:
-
a memory;
first source controller circuitry, coupled to the memory, provided to create in the memory a source tree for the initial version S1 and the modified initial version S2 of the software;
input circuitry, provided to receive a new version S3 of the software from a supplying third party;
second source controller circuitry, coupled to the input circuitry, provided to determine a difference between the new version S3 and the initial version S1;
first software tool circuitry, coupled to the second source controller circuitry, provided to integrate the difference between the new version and the initial version S3−
S1 into a copy S1′
of the initial version to yield an integrated copy; and
second software tool circuitry, coupled to the first software tool circuitry, provided to incorporate the integrated copy into a copy of the modified initial version S2 to yield a modified new version S4.
-
-
8. A method of maintaining version control for an initial version S1 of software stored in a memory, where the initial version has been modified to yield a modified initial version S2 of the software that is also stored in the memory, the method comprising the steps, performed by a data processing system, of:
-
creating, by an SCCS command, in the memory, a source tree containing the initial version S1 and the modified initial version S2 of the software;
receiving a new version S3 of the software;
determining, by an SCSS command, a difference between the new version S3 and the initial version S1;
integrating, by a TeamWare command, the difference between the new version and the initial version (S3−
S1) into a copy of the initial version S1′
to yield an integrated copy; and
incorporating, by a TeamWare command, the integrated copy into a copy of the modified initial version S2 to yield a modified new version S4, while still retaining the initial version S1 and its modified initial version S2. - View Dependent Claims (9)
checking out a file of the initial version S1 from the source tree; and
checking in a corresponding file of the new version S3 into the source tree, so that the corresponding file of new version S3 is placed in the source tree as a modification of the file of the initial version S1.
-
Specification