This paper describes the design and implementation of a distributed file repository that supports data sharing in a variable connected environment. Our design is based on the observation that it is difficult to make a clean cut between the various choices for important issues like consistency and concurrency control when the system is designed. Hence, we make it possible for the user to choose whether to adopt an optimistic or a pessimistic approach, rather than embedding it into the system; that is, the user is placed in the decision loop. Unlike many contemporary systems, our repository treats the optimistic and pessimistic approach uniformly and allows users to select them on a per-file basis. Furthermore, even if a file has to be managed pessimistically, the advantage of the optimistic approach-high availability--is retained. The file repository has been implemented, and it is our research vehicle.