1

私たちのプロジェクトには、2 つの開発ストリームと 1 つの統合ストリームがあります。

以下はストリームです

      ProjName-Int-Stream
      Bangalore-Dev-Team
      Madurai-Dev-Team

Bangalore-Dev-Team メンバーがフォルダーを削除し、同じ名前の新しいフォルダーを作成しました (フォルダーをアンカタログして同じものを作成しました)。次に、さらにファイルを追加し、統合ストリームに配信しました。

Madurai チーム メンバーは同じフォルダで作業していましたが、Bangalore メンバーがそれを削除したことを知りませんでした。現在、彼が変更を配信しようとしている間、彼のアクティビティはリストされていません。

このシナリオに直面した人はいますか? もしそうなら、あなたは是正措置として何をしましたか、そしてそれが起こらないようにどのように防ぎましたか?

4

1 に答える 1

1

はい、それらは悪の双子と呼ばれます (ここで例を参照してください: 2 つの要素 (ここではディレクトリ) が作成されます。つまり、「ソース管理に追加」が2 回行われます。これは、異なる oid を持つことを意味します。

Maduraiそのディレクトリの履歴がそれほど重要でない場合、チームが次に進む最も簡単な方法は次のとおりです。

  • 最初にリベース
  • リベース中のディレクトリのバージョンを受け入れBangaloreます (彼自身のファイルは消えます)
  • によって新しく作成されたファイルで作業をやり直しますBangalore
  • 配達

もう1つの(よりクリーンな)オプションは、次のことですBengalore

  • D削除されたディレクトリ " " を元の内容で復元します。その方法は次のとおりです。
    • 「D」のディレクトリのバージョンツリーを表示
    • そのバージョン ツリーで、まだ "D" を参照している以前のバージョンを探します (compare with another versionその親ディレクトリの現在の最新バージョンとバージョン ツリー内の以前のバージョンの間で " " を実行します)。
    • その以前のバージョン (まだ "D" を参照しているバージョン) を右クリックして " " を選択merge toし、現在のバージョンをクリックします (チェックアウトするように求められます)。
    • グラフィカル マージを選択し、マージ ウィンドウで正しいバージョンの「D」を選択します (つまり、再作成されたものではなく、古いバージョンからのもの)。
    • 親ディレクトリにチェックイン

Bangalore単一のアクティビティで変更を行った場合、そのアクティビティを元に戻すこともできます。これは簡単です。- (現在は再び存在する) ディレクトリ " D" で変更を行います - 再度配信します - その後、Maduraiリベースし、配信も行います

于 2012-03-21T06:31:06.710 に答える