2

最近、Harvest から Rational Team Concert (RTC) に移行しました。

多くの苦情がありますが、それらにこだわるのはやめましょう。

次のことを行う方法を知る必要があります。

私のワークスペースC:\wsには、次のストリーム/プロジェクトがあります。

C:\ws\dev1
C:\ws\dev2

デプロイ スクリプト パッケージ (Oracle、dotNet) をビルドするとき、私がやりたいことは、プロジェクトの過程で変更したすべてのものがパッケージに含まれていることを確認することです。

これを行うために、現在の生産を反映するストリームがあります。

単純に RTC リポジトリにクエリを実行して質問したい:

C:\WS\dev1「本番ストリームと比較して異なるすべてのファイルをリストします」.

SCM.exeこれを行う方法を示すコマンドの例が見つかりません。

私が見つけた唯一の方法は、" " などのローカル ワークスペースにプロダクション ストリームを "ロード" し、 " " と " " をC:\ws\prod比較することです。C:\ws\dev1C:\ws\prod

これの問題は、RTC ロードが実際のリポジトリ チェックイン タイムスタンプを保持しないためです。すぐにこれらの除外を開始する必要があります。

SCM を使用してこれを簡単に行う方法があるはずです。

グラフィカルな Eclipse " compare"差分を表示しますが、そのリストはすべてグラフィカルであるため、テキスト ファイルにコピー アンド ペーストすることさえできません。

4

2 に答える 2

3

コマンド ラインを使用すると、リポジトリ ワークスペースをストリームと比較できます。ディスクにロードした変更をチェックインした場合は、リポジトリ ワークスペースを運用ストリームと比較できます。

lscm compare ws {workspace id} s {stream id} -r {repository_URI} -I f

この-I fオプションは、ファイルの相違点とファイルの相違点のみをリストします。

コンテンツがチェックインされていない場合は、フロー ターゲットを設定してstatusコマンドを使用できます。チェックインされていないファイルが出力に表示されます。オプションを使用して、-C変更セットを展開してファイルを表示できます。ただし、その情報を除外するオプションがないため、出力を解析する必要があります。

まだサポートされていないものがある場合は、jazz.net で作業項目を開くことができます。

于 2013-02-20T19:17:20.670 に答える
1

この種の比較のアイデアは、dev1リポジトリワークスペースのフローターゲットを少し変更して、prodストリームを指すようにすることです。

これにより、dev1にないprodの変更セットを取得したり、まだprodにないdev1の変更セットを一覧表示したりできます。

記事「RationalTeamConcertでのJazzSCMコマンドラインの使用開始」では、そのような操作について説明しています。
(例は別のワークスペースを指すためのものですが、別のストリームを直接指すこともできます)

~/sample$ lscm change-target workspace Workspace1 Workspace2
Target changed.

~/sample$ lscm status
Workspace: (4819) "Workspace1" <-> (4828) "Workspace2"
  Component: (4818) "Comp1" <-> (4828) "Workspace2"
    Baseline: (4825) 1 "Initial Baseline"
    Incoming:
      Change sets:
        (4935)  ---$ userB  <No comment>

ただし、これらの変更セットのコンテンツを一覧表示し、共通のファイルを探す必要があります。これらは、コンテンツが異なるファイルです(dev1またはprodにのみ存在するファイル、または削除されたファイルは言うまでもありません)。

つまり、コマンドラインでこれを行う簡単な方法はないようです。

于 2013-02-16T13:09:51.903 に答える