Web developer isolation techniques
First Claim
1. A method of merging a first file and a second file, said first file and said second file being modified versions of an original file, said method comprising the steps of:
- (a.) comparing said first file with said original file and producing a first differences log, wherein said first differences log identifies the differences between said first file and said original file;
(b.) comparing said second file with said original file and producing a second differences log, wherein said second differences log identifies the differences between said second file and said original file;
(c.) comparing said first differences log and said second differences log to identify portions of said first file which are in conflict with said second file and producing a conflicts log; and
(d.) prompting a developer to select those differences from said conflicts log that are to be applied to modify said original file.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for allowing multiple developers of software applications working in client/server computing network to remotely save, test and debug project files such as web pages. The client computer is capable of emulating server side operations to allow the developer to locally test changes to project files before they are saved on the server. The client computer maintains an accurate view of the overall project, but without having to locally copy the entire software project, by storing file information relating to the software project including, for example, metadata, link information, and BOT replacements, and/or a directory structure of the files and folders in the software project that mirrors the directory structure of the software project on the server. Various features include providing developers with the ability to check out, modify and debug files concurrently with other developers, and merging changes made by different developers to the same file. Concurrently modified files may be merged by prompting a developer when conflicts arise between the files to be merged.
173 Citations
47 Claims
-
1. A method of merging a first file and a second file, said first file and said second file being modified versions of an original file, said method comprising the steps of:
-
(a.) comparing said first file with said original file and producing a first differences log, wherein said first differences log identifies the differences between said first file and said original file;
(b.) comparing said second file with said original file and producing a second differences log, wherein said second differences log identifies the differences between said second file and said original file;
(c.) comparing said first differences log and said second differences log to identify portions of said first file which are in conflict with said second file and producing a conflicts log; and
(d.) prompting a developer to select those differences from said conflicts log that are to be applied to modify said original file. - View Dependent Claims (2, 3, 4)
-
-
5. A server computer capable of being operatively coupled to a client/server network comprising in combination:
-
(a.) means for checking-out at least two copies of a file from said server computer, (b.) means for checking-in at least two modified versions of said file to said server computer; and
(c.) means for performing a merge of the at least two modified versions to form a merged file if more than one of the at least two modified versions are checked-in from different client computers, wherein a merge function performed by said means for performing a merge checks for conflicts between the modified versions, prompts a developer at said server computer to select which modifications are to be applied, and applies the selected modifications to form said merged file. - View Dependent Claims (6, 7, 8, 9, 10)
a first file storing one of said at least one modified version of said file; and
,a second file storing another of said at least one modified version of said file.
-
-
11. In a client/server network having a server computer and a client computer, said server computer having stored therein a software project having a plurality of project files, wherein the project files are part of a directory structure and wherein at least one project file is linked to at least one other project file within said software project, a method of editing said project file in said client computer comprising the steps of:
-
storing in said client computer file information relating to said software project;
checking-out at least two project files from said server computer to form checked-out files in said client computer, wherein a first of said checked-out project files is linked to at least one other checked-out file;
storing in said client computer at least on file from said software project, wherein the number of files in said client computer is fewer than the number of files for said software project;
modifying at least one of said checked-out files in said client computer to form at least one modified project file; and
using said file information in said client computer to locally debug said modified project file. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19, 20)
-
-
21. A method of testing and debugging a file of a software project comprising the steps of:
-
storing in a client computer file information relating to the software project in a server computer;
checking-out at least two project files from said server computer to form checked-out files in said client computer, wherein a first checked-out project file is linked to at least one other check-out file;
storing in said client computer at least one file from said software project, wherein the number of files in said client computer is fewer than the number of files for said software project;
modifying at least one of said first checked-out file in said client computer to form at least one modified project file; and
using the file information in said client computer to fix-up said other checked-out project file that is linked to said modified project file in accordance with changes reflected in said modified project file to form at least one fixed-up file in said client computer.
-
-
22. A client/server network for allowing multiple developers to share a software project, comprising in combination:
-
a server computer having stored therein said software project, wherein said software project has a plurality of project files and wherein at least one project file is linked to at least one other project file within said software project;
a client computer having stored therein a checked-out copy of at least one of said project files and file information relating to said software project providing directory structure information of said project files stored in said server computer, wherein the number of project files in said client computer is fewer than the number of total project files for said software project; and
a communication medium operatively coupling said server computer to said client computer. - View Dependent Claims (23, 24, 29, 30, 31, 32)
-
-
25. A client/server network for allowing multiple developers to share a software project, comprising in combination:
-
a server computer having stored therein said software project, wherein said software project has a plurality of project files and wherein at least one project file is linked to at least one other project file within said software project;
a client computer having stored therein a checked-out copy of at least one of said project files and file information relating to said software project, wherein the number of project files in said client computer is fewer than the number of total project files for said software project, wherein the client computer further comprises means for checking-out said project files from said server computer, means for locally editing said checked-out copy of said project file, means for locally fixing-up said project files that are linked to said checked-out copy based on changes to said checked-out copy, and means for locally testing said checked-out file and said copy; and
a communication medium operatively coupling said server computer to said client computer. - View Dependent Claims (26, 27, 28)
-
-
33. A client computer capable of being operatively coupled to at least one server through a network comprising:
-
a network interface over which files are retrieved;
a processor requesting a first set of files to be modified from said server, said processor receiving said first set of files to be modified and a second set of files linked with said first set of files; and
a storage device storing the first and second set of files, wherein the first and second set of files is fewer than the total number of files for said software project, and file information relating to said software project providing directory structure information of said total files for said software project. - View Dependent Claims (35, 36, 37, 38, 39, 40)
-
-
34. A client computer capable of being operatively coupled to at least one server through a network comprising in combination:
-
a network interface over which files are retrieved;
a processor requesting a first set of files to be modified from said server, said processor receiving said first set of files to be modified and a second set of files linked with said first set of files;
a storage device storing the first and second set of files, wherein the first and second set of files is fewer than the total number of files for said software project, and file information relating to said software project; and
means for modifying said first set of files and creating a modified set of files based on file information relating to said software project.
-
-
41. A method of testing and debugging a file of a software project comprising the steps of:
-
storing in a client computer a local directory structure of files and folders that generally mirrors a directory structure of said software project in a server computer;
checking-out at least two project files from said server computer to form checked-out files in said client computer, wherein a first checked-out project file is linked to at least one other check-out file;
storing in said client computer at least one file from said software project, wherein the number of files in said client computer is fewer than the number of files for said software project;
modifying at least one of said first checked-out file in said client computer to form at least one modified project file; and
using said local directory structure in said client computer to fix-up said other checked-out project file that is linked to said modified project file in accordance with changes reflected in said modified project file to form at least one fixed-up file in said client computer.
-
-
42. A client/server network for allowing multiple developers to share a software project comprising in combination:
-
a server computer having stored therein said software project, wherein said software project has a master directory structure of project files and wherein at least one project file is linked to at least one other project file within said software project;
a client computer having stored therein a checked-out copy of at least one of said project files and file information relating said software project; and
a communication medium operatively coupling said server computer to said client computer.
-
-
43. A client computer capable of being operatively coupled to at least one server through a network comprising:
-
a network interface over which files are retrieved, wherein said files are part of a software project;
a processor requesting a first set of files to be modified from said server, said processor receiving said first set of files to be modified and a second set of files linked with said first set of files; and
a storage device storing said first and second set of files, wherein said first and second set of files is fewer than the total number of files for said software project, and file information relating to said software project selected from the group consisting of metadata, link information, and BOT replacement. - View Dependent Claims (44, 45, 46, 47)
-
Specification