2012-03-19 7 views
0

私はubuntuリポジトリからsvnの新しいコピーをインストールしました。バージョンは1.6.12です。更新時に差分を確認する

たとえば、User1とUser2の2人のユーザーが存在するとします。

Day1。

  1. ユーザーのいずれかが、新しいプロジェクトをインポートします。プロジェクトは1つのファイルで構成されています:main.cpp。
  2. 両方のユーザーがチェックアウトを行うと、両方とも作業コピーが作成されます。

2日目。

  1. User1が、仕事に来るmain.cppにからすべてを削除し、家をコミットして行きます。

  2. User2がUser1が更新を去り、彼は紛争のいずれかのプロンプトを表示せずにリポジトリから空main.cppにを取得した後に動作するようになります。

前述したように、それは状況に更新上の紛争に要求されますので、そこで問題場合は、チューニングSVNにそれは可能ですか?

答えて

2

実際には、更新前にユーザー2も変更されていない限り、競合はありません。

svn updateは、単に作業コピーがリポジトリの最新のリビジョンで更新されることを意味します。そのため、空のファイル(ファイルの最新のリビジョン)が作業コピーに取り込まれることが期待されています。状況で

+0

もっときれいにする必要がないので、競合はありません:」...レポからの変更(すべてと任意の)作業コピーに配布されます。 " –

+0

Ok。わかった。ありがとう。しかし、更新する前に競合を解決するためにuser2は何をすべきですか?ファイルが空の場合だけでなく、しかし、一般的に彼のバージョンとサーバーのバージョンにはいくつかの違いがありますか? – Alexander

+0

こんにちはアレクサンダー、 'svn update'が競合を認識すると(つまり、* User2 *は変更を行い、* User1 *は変更されたファイルをコミットしました)、ユーザーに通知します(ステータスフラグ' C')。さらに、複数のファイルを* User2s *にコピーします。作業コピー:リポジトリからの現在のリビジョン、* User2s *編集ファイルのベースリビジョン、* User2 *の変更ファイル、およびコンフリクトマーカーを含むセクションを含むマージされたファイル。 * User2 *は、それらの(少なくとも)4つのファイルを「差分」し、それらをマージ(すなわち、競合を解決)し、マージされたファイルをコミットすることができる。 – bmk

2

上記のように?

User2が競合を生成することができます任意のローカルな変更を、持っていると手動マージ

関連する問題