Patent ID: 8239345

Claim:
A method for providing asynchronous replication, the method comprising: saving contents of a copy of a server file to a down load file, a base file, and a working file, wherein saving the contents of the copy of the server file comprises replicating the contents of the server file to each one of the following: the down load file, the base file, and the working file; receiving an indication from an application that the application has edited the working file; saving, in response to the indication, a copy of the edited working file to an upload file; querying a server computer to determine if the server file on the server computer has been changed; when it is determined that the server file on the server computer has not been changed, updating the server file on the server computer with contents of the upload file; and when it is determined that the server file on the server computer has been changed, performing a three-way merge of the upload file, the base file, and the changed server file on the server computer, and updating the server file on the server computer with results of the three-way merge.