Word文書で同時編集が行われているので、Subversionが.docファイルのマージを処理できることを確認したいと思います。 SubversionがWord文書のマージをうまく処理するかどうか知っていますか?
TortoiseSVN マージユーティリティと xdocdiff プラグインを使用して、Officeドキュメントを比較およびマージします
デフォルトのインストールで TortoiseSVN を使用して、差分を表示し、Word文書のマージを実行できます。これは、Wordを開き、Word独自のレビュー/変更モードを使用して実行します。
編集:デフォルトでは、PowerPoint、Excel、OpenOffice、StarOffice形式の差分機能もあります。 (TortoiseSVN\Diff-Scriptsディレクトリを確認してください)。
svn:needs-lock プロパティをSubversionに保存されているWord文書に追加して、編集する前にファイルをロックする必要があるようにします。これは、マージの競合を防ぐのに大いに役立ちます。
これは私たちが仕事でしていることであり、それは素晴らしい働きをします。 (Word文書を使用する必要があるという選択肢はないため、ファイルの種類を変更するのではなく、このソリューションを使用します。)
Word文書はバイナリなので、違います。編集者は、reStructuredTextやLaTeXのようなプレーンテキスト形式の使用方法を教えることができるほど十分な知識がありますか?
いいえ:Wordはバイナリファイル形式を使用しているため、svnはファイルをまったくマージできません。
ただし、Word自体にはマージ機能があります。マージの競合を解決する必要がある場合は、それを試すことができます。
Word(名前を付けて保存..XMLドキュメント)を使用して、docxドキュメントを「フラットOPC」XML形式で保存できます。
このようにして、プレーンテキストファイルを取得します。
ただし、注意が必要なのは、関係IDが破損しないことです。
例えば:
ユーザーAは、画像(またはハイパーリンク、コメント、脚注など)をドキュメントに追加し、svnコミットを実行します。
ユーザーB(svnの更新なし)は、これらの1つをWordに追加し、xmlとして保存してから、svnの更新を行います。
ユーザーBは、この時点でWordでドキュメントを開くことができない可能性が高いため、コミットしない方がよいでしょう。これを制御できる場合、または手動で問題を修正する準備ができている場合は、問題ありません。
それ以外の場合は、Alfrescoで、ドキュメントを細断処理してその構成ビットをバージョン管理する、私のPlutextコラボレーションソフトウェアのようなものを検討できます。
私は現在、SharpSVNを使用してリポジトリに接続するWordプラグインに取り組んでいます。現在の状態では、新しいドキュメントの作成と選択は少し複雑ですが、それは大きな問題ではありません。
したがって、(最終的に)リポジトリにドキュメントがある場合、コミットして任意のリビジョンから更新するのは非常に簡単です。これらの.docxファイルを、Wordに組み込まれている比較またはマージ機能と比較してマージできます。実際には非常に簡単です。来週かそこらでそれを成し遂げることを望んでいます。
このページ http://newgeeks.blogspot.com/2006/08/Word-document-management-using-svn.html のバージョン管理にtotoiseSVNを使用する方法について段階的に説明します。 MicrosoftWordドキュメント。
Htmlのような非バイナリ形式の使用を検討することもできます
Subversionを使用してWord文書を自動的にマージすることはできません。 3ウェイマージのサポートはありません(Tortoise SVNを使用している場合でも)。 Wordに縛られていない場合は、 Revisionator のようなオンラインドキュメントエディタを使用できます。 wysiwygドキュメントの3方向マージをサポートします。また、他のリビジョン管理機能(差分、フォークなど)。