web-dev-qa-db-ja.com

Eclipse:「元に戻す」と「オーバーライドして更新」の違い

Eclipseの「元に戻す」オプションと「オーバーライドおよび更新」オプションの違いは何ですか(チーム同期-SVN(ワークスペース)-発信モード)?

前もって感謝します。

22
Vikram

元に戻す:

ファイルを変更前の状態に戻します。つまり、元のリビジョンに戻り、作業コピーとサーバー上の特定のリビジョンとの違いをすべて削除します。

基本的に:ファイルの変更を変更されていない状態に戻します。古いリビジョン。

オーバーライドと更新:

変更された作業コピーの上にファイルの新しいコピーをアップロードし、変更をすべて削除して、サーバーから見たときにファイルを「最新」にします。

基本的に:選択したリソースのローカルコピーをリポジトリからのものに置き換えます。サーバーから見たリビジョン。

ソース

26
wleao

これがシナリオです。あなたとあなたのチームメイト(Bob)が両方とも同期していて、リポジトリと最新であると仮定します。

  • 両方ともhello.txtリビジョン100のローカルコピーがあります
  • ボブが変更をコミットすると、リポジトリにhello.txt(101)が作成されます
  • Hello.txt(100)に対してコミットされていないローカル変更があります。
    • コミットしようとすると、リビジョン(100)が現在リビジョン(101)にあるリポジトリと同期していないため、競合が発生します。
    • 元に戻すと、リビジョン100に戻り、ローカルの変更が失われます。
    • ローカルの変更をオーバーライドして更新すると、リポジトリからのBobの最新のリビジョンによって上書きされ、リビジョン(101)のローカルコピーになります。
    • 変更をマージし、「マージ済みとしてマーク」すると、リビジョン(102)をコミットして作成できます。
    • 変更を再適用してコミットしたら、リビジョン(102)を作成します。
39
crowne

更新-現在のコードをリポジトリから自分のコードにマージします。競合がない限り、コードは上書きされません。

元に戻す-ファイルを選択した以前のバージョンに変更します。

上書き-現在のファイルを上書きし、リポジトリのファイルに置き換えます。 -

5
Nick