問題: ユーザーがストーリー (基本的にはテキスト ファイル) を作成、編集、販売する Web サイトを開発しています。テキストにユーザーフレンドリーなバージョン管理を実装したい(多かれ少なかれGoogle Docsに似ている)。私はWiki を探しているのではなく、バージョン管理が 1 つの側面にすぎない Web サイトに統合できる VCS ソリューションを探しています (たとえば、Web、デスクトップ、および iOS バージョンの独自のエディターを持っています)。
設計の詳細: 私の設計では、それぞれ 100kb の平均 4 つのストーリー (テキスト ファイル) を持つ 50,000 人のユーザーを処理できるようにしたいと考えています。彼らのストーリーは、少なくとも 30 分ごとに自動的にコミットされます。数千のストーリーと数百のアカウントの頻繁な作成と削除、変更のコミットのオーバーヘッドと遅延の可能性が心配です。もう 1 つの懸念事項は、データの破損に対する脆弱性です。最後に実用性の問題もあります。後で、Django 1.3 を使用して主に Python 2.7 でサーバー Web インターフェイスをプログラミングしていることを知っておくと役立つ場合があります。上記を踏まえて、以下の質問があります。
- サブバージョンを使用すると仮定します(私は精通していますが、そのような規模では使用されたことはありません)。以下のオプションのどれが良いですか?
- ユーザーごとに個別のプロジェクトを作成します。
- すべて同じ巨大なプロジェクト内に、ユーザーごとに個別のフォルダーを作成します。
- ユーザーごとに個別のファイルをすべて同じフォルダーとプロジェクトに作成します (何千もの .svn ヘッダーの処理を避けるため)。
- サブバージョンを使用しないと仮定します。他にどの VCS をお勧めしますか (Git? Mercurial? ...)、どのようなセットアップを (上記の質問の金型で) 使用しますか? その理由を簡単に説明してください。