2

クライアントがSourceSafeからClearcaseに移行しています。リンクをClearcaseに引き継ぐことができるように、Source Safeデータベース内のすべてのリンクファイルを一覧表示する必要があります。明らかに、すべてのソースは1日目にClearcaseにチェックインする必要があり、既存のリンクは失われます。

このレポートを作成するためのツールはありますか、あるいはクリアケースに完全にインポートするためのツールはありますか?

私の計画は、PowerShellスクリプトを記述して、Source Safe SSフォルダーを再帰化し、COMを使用してリンクを検索することです。

ありがとう。

4

2 に答える 2

2

この質問で述べたように、Source Safe から ClearCase へのインポートにはclearexport_ssafeを使用する必要があります。

ただし、そのツールのドキュメントでは、次のことが明示的に言及されています

株式。Rational ClearCase には、Visual SourceSafe 共有に相当する機能はありません。clearexport_ssafe は、変換中に共有をハード リンクとして保持しません。代わりに、共有は個別の要素になります

したがって、スクリプトはすべてのリンクを一覧表示し、最初のディレクトリと新しく作成された別の要素の間にソフト リンクを作成する必要があります。

ただし、この回答(この例の SVN リポジトリの場合) に示されているように、すべての共有ファイルが直接使用されなくなった、ターゲット ClearCase リポジトリの別の組織を検討することをお勧めします。

リンクされたファイルをすべて削除しました。以前にリンクされたすべてのクラス ファイルは、ソリューション内の共有プロジェクト参照として他のプロジェクトに共有されるクラス ライブラリに配置されています。したがって、本質的には、クラス ファイルではなく、ライブラリを共有します。

これに慣れるまで少し調整プロセスがありましたが、それ以来、リンクを見逃すことはありません。コードをこのように設定することで、より優れたデザイン プラクティスが促進されます。

私は主に UCMを使用しており、これらすべての「共有」はUCM componentの自然な候補であり、UCM ベースラインはそれらの異なるバージョンを参照します。その後、異なるバージョンを選択するために独自の「構成」(ラベルのリスト) を作成できます。プロジェクト間で簡単に再利用できるようにします。

于 2009-05-27T20:58:48.233 に答える
2

VonC が述べたように、VSS から ClearCase へのインポートは次のように非常に厄介です。

  • エクスポート/インポートが完了するまでに時間がかかるため、IBM に対して PMR を開きます (これは役に立ちませんでした)。
  • Source Safe 共有はファイルに変換され、あちこちに複製が作成されます (恐ろしい!)。

私自身 ClearCase UCM に取り組んでいますが、あなたと同じ決定を下しました (CM での 10 年間の経験では、これが常に最良の決定です): 参照用に履歴を残し、多くても 2 つのバージョンを 1 つにインポートします。他のものの上に、手で (current in development; current in test; current in live のように)。

共有の問題を解決する方法は次のとおりです。

  1. ソースツリーから分離された「共有」は、他のソースから独立してインポートされます

  2. ゼロからインポートされた他のソース (履歴と共有なし)。MAIN_SRC というコンポーネントで言ってみましょう

  3. ゼロから (履歴なしで) インポートされた共有。SHARE_SRC というコンポーネントで言ってみましょう

  4. MAIN___SRC と SHARE_SRC の両方のコンポーネントを含むプロジェクトが作成されました。

IDE (Visual Studio など)が共有が以前と同じフォルダーにあることを完全に期待している場合 (つまり、Visual ではすべてのプロジェクトが正しくない場合、この問題を解決できず、すべてのファイルを Visual 自体から再リンクする必要があるなど...多くの作業)。

これは、ClearCase VOB シンボリック リンクを使用することで解決されます。

MAIN___SRC で、SHARE_SRC の myShared ファイルというファイルを使用する必要があるとします。

myShared ファイルを使用する必要があるフォルダー内から、コマンド ライン インターフェイスを使用して次を実行します。

cleartool ln -s ..\..\SHARE_SRC\(myPath)\mySharedFile . 

ClearCase でコンポーネント フォルダ レベルに移動し、SHARE_SRC コンポーネント フォルダ内のパス (myPath) に従って下に移動するには、必要な数の ..\.. が必要です。

ClearCase パスは次のもので構成されていることに注意してください。

M:\View_name\VOB_name\Component_name\Your first level of files and folders

( VOB_name\Component_name はコンポーネントの「ルート」です。ただし、コンポーネント VOB が 1 つの場合は別です。この場合、VOB_name\Component_name は単なる VOB_name になります)

最も簡単な方法は、作成する必要があるすべての VOB シンボリック リンクのマッピングを用意し、必要なすべての「cleartool ln -s」コマンド ラインをスクリプトに入れて 1 回実行することです。

その後は問題なく、IDE はソースが元の場所にあると認識します。

乾杯、

トーマス

于 2009-05-29T15:44:43.853 に答える