A source control tool such as git or mercurial will solve this. Any collaborator who uses vi should have no issues with a git/hg workflow for managing changes.
Version control is not editing.
Version control is not editing.