A contract-extended push-pull-clone model In the push-pull-clone collaborative editing model widely used in distributed version control systems users replicate shared data, modify it and redistribute modified versions of this data without the need of a central authority. However, in this model no usage restriction mechanism is proposed to control what users can do with the data after it has been released to them. In this paper we extended the push-pull-clone model with contracts that express usage restrictions and that are checked a posteriori by users when they receive the modified data. We propose a merging algorithm that deals not only with modifications on data but also with contracts. A log-auditing protocol is used to detect users who do not respect contracts and to adjust user trust levels. Our proposed contract-based model has been implemented and evaluated by using PeerSim simulator.