バージョン管理システム
ひとつのファイルへ異なる変更が同時に行われる(並行処理)と一貫性が保てない。この問題を防ぎ並行開発を可能にするために「ロック」あるいは「コピー・マージ」が用いられる。バージョン管理システムはこれらの技法を用い並行開発を可能にする。
ロック方式では、ユーザーは編集するファイルにロックをかけ、他のユーザーが編集できないようにし、編集が完了したらロックを解除する。単純で確実な仕組みではあるが、他のユーザーはファイルの編集完了まで待たされ、効率が悪い。また、ユーザーがファイルにロックをかけたまま誤って放置する恐れもある。ロック方式の考え方は「競合を起こしうる変更は事前に許可しない」である。
コピー・マージ方式では、編集するファイルをシステムからユーザーの元にコピーし、このコピーを編集する。編集完了後に変更した部分をシステム側に反映させるが、この作業をマージと呼ぶ。他のユーザーの編集中でもシステムからのコピーは自由に行えるようにすることで、複数のユーザーが同時に編集作業を進められるため、グループでの利用に向いている。ただし、それぞれのユーザーによる変更が競合する場合には、マージする時点で解決する必要がある。一般的には、変更内容が競合する旨をユーザーに知らせ、内容を確認、修正させる方法がとられることが多い。コピー・マージ方式の考え方は「実際に競合したらその時に解決する」である。
プレーンテキスト形式のファイルは差分管理がしやすいため、マージや競合状態の解消をすることは比較的容易だが、バイナリ形式のファイルは一般的にマージや競合状態の解消が難しい。そのため、既定ではコピー・マージ方式であっても、特定のファイルは常にロック方式とすることのできる機能を持っているバージョン管理システムもある。