1

「ロック」(予約されていないチェックアウト)なしで、チーム用に単一の開発ストリームを使用して ClearCase を使用しています。

ClearCase クライアント バージョン: 7.1.1 ClearCase サーバー バージョン: 7.0.1.2

「グラフィックマージ」を使用せずに、同じテストを実行しました。このオプションは期待どおりに機能しました。これにより、ClearCase の過去の不具合や回避策が明らかになる可能性があります。

これは、ファイルがチェックインされるのを待たずに、2 人以上のユーザーが同じファイルを一度に編集できることを意味します。

奇妙な動作のいくつかのケースを確認し、今日少し実験して、次のシナリオが発生することを確認しました。

  1. File.txt は 2 人のチーム メンバーによってチェックアウトされています。
  2. 各メンバーは、ファイル (ファイルの他の領域) に変更を加えます。
  3. 最初の開発者はコードを ClearCase にチェックインします。ここでは問題ありません。
  4. 2 番目の開発者がチェックインし、マージ ポップアップ通知を受け取ります。

「グラフィック マージ」を選択すると、この場合、ClearCase はすべてのマージが自動的に行われたことを通知し、開発者からの追加入力は必要ありません。

もう少し調べてみると、最初のチェックインが削除(削除) され、後のチェックインの変更のみが保持されています。

なぜこうなった?これにより、私たちのチームはすでに何度かコードを失っています。安全でない/間違ったことをしていますか?

編集:問題の画像で問題を説明する:

ファイル Manager.cs はバージョン 27 です。2 人の開発者がチェックアウトしています。

1 つは変更を行い、チェックインしました。もう 1 つはチェックインし、マージ通知を受け取ります。

これは、グラフィカルなマージで私が見るものです:

左側がバージョン 27、中央がバージョン 28 (最新のチェックイン バージョン)、右側がバージョン 28 のコード変更を削除した結果であることに注意してください。

なぜこれが自動的に起こるのですか??

マージ

画像はここでも見ることができます:画像

4

1 に答える 1

1

注: 「ロック」なしで ClearCase を使用している場合、それは予約されていないチェックアウトを行っていることを意味します (予約されたチェックアウトではありません)。

「グラフィック マージ」を選択すると、競合がなくても Windows がマージを調整するのに役立ちます。

このようなマージでは、以前のチェックインは削除されません。新しい変更がすべて選択されている場合にのみ、以前の変更がキャンセルされる可能性がありますが、グラフィカルなマージ ウィンドウが開いている場合は、マージの適用方法を制御できます。

過去の問題のあるマージについては、バージョン ツリーから、以前のバージョンの dev1 から LATEST バージョンへのマージを簡単に再適用して、キャンセルされた変更を再適用できます。


4 日前の最初の回答以来、2 つの新しい情報が得られました。

  • ClearCase クライアント バージョン: 7.1.1 ClearCase サーバー バージョン: 7.0.1.2。サーバーよりも新しい
    バージョンのクライアントを使用することは決して良いことではありません。

  • 「グラフィックマージ」を使用せずに、同じテストを実行しました。このオプションは期待どおりに機能しました。
    これは、マージ用の GUI と純粋なコマンド ラインとの間で既に見られたいくつかの不一致と一致します (この他のシナリオのように)。
    GUI が失敗した場合は、常に純粋な CLI (コマンド ライン インターフェイス) にフォールバックするようにしてください。

于 2011-11-23T12:18:24.530 に答える