Patent ID: 8682928

Claim:
A method for controlling and providing access to a file to at least one remote computer over a network, the method comprising: maintaining metadata about files maintained at remote storage locations, wherein the metadata indicates remote storage location addresses corresponding to the files; receiving a request from the remote computer for a filename of a requested file over the network, wherein the remote computer is a source code management system client; determining from the metadata one remote storage location address associated with the filename where the requested file is located, wherein the metadata includes indications of the number of accesses of the files by a plurality of source code management system clients, wherein the remote storage location address is based on a history of request patterns from a plurality of source code management system clients, wherein the history of request patterns includes the indications of the number of accesses of the files by the plurality of source code management system clients, wherein copies of the requested file are located in a plurality of remote storage locations, and wherein the one remote storage location address associated with the filename where the requested file is located is more proximate to the source code management system client in comparison to other source code management system clients of the plurality of source code management system clients; updating the metadata for the requested file; and sending the storage location address to the remote computer, wherein the one remote storage location address identifies a storage device that is at a geographical location closer to the remote computer than a location of the metadata.