1. A computer-implemented process for providing eventually consistent transactions for data shared between a plurality of computing devices, comprising using a computing device to perform process actions for: providing one or more fork-join models that provide a pre-defined conflict resolution policy for determining how to apply updates to a primary revision of data shared between a plurality of computing devices connected to a networking environment; maintaining a primary revision of the shared data on one or more of the computing devices acting as a primary host, said primary revision representing a local revision held by the primary host; initiating one or more forks of the primary revision to one or more computing devices acting as any of clients and secondary hosts to create one or more nested levels of forked revisions, each forked revision stored as a local revision on one or more of the computing devices acting as any of clients and secondary hosts; performing one or more update operations on any local revision to create corresponding updated local revisions; and joining one or more updated local revisions received by any particular host into the local revision of the particular host, and applying all update operations that were performed on the received updated local revisions (in the time between the fork of the primary revision to the corresponding computing device and the join of the corresponding updated local revision) to the local revision of the particular host in accordance with the conflict-resolution policy.