別名は、ソース管理で項目を一意的に識別する短縮名です。 別名は、参照する項目の左に表示される、long 型の (括弧で囲まれた) 4 桁の番号です。 以下に例を示します。
$ scm status
ワークスペース: (6377) "My Workspace" <-> (7487) "Stream"
コンポーネント: (6429) "Flux Capacitor"
ベースライン: (8471) 6815 "v20091102"
発信:
変更セット:
(8459) --@ 98314 "Degauss Flux Capacitor" - <コメントなし>
上の例の括弧内に示された各番号 (6377、7487、6429、8471、8459) が別名です。
各サブコマンドには、一連の戻りコードがあります。 サブコマンドが成功した場合は 0 が返されます。 エラー、または競合などの問題がある場合、またはローカル・サンドボックスがリモート・ワークスペースと同期していない場合には、ゼロ以外が返されます。
以下の各例では、lscm login を使用してリポジトリーにログインしていることが前提になります。 したがって、各サブコマンドで -r repositoryNickName を指定するだけで済みます。 以下に例を示します。
$ lscm login -r https://your.repository.com:9443/jazz -n nickname -u echughes -c パスワード (echughes @ https://your.repository.com:9443/jazz): https://your.repository.com:9443/jazz にログインしました。
ニックネームを使用してリポジトリー https://your.repository.com:9443/jazz を参照することもできます。 例えば、URL、ユーザー名、およびパスワードの代わりに -r nickname をサブコマンドに渡します。
プロジェクトを開始する前に、リポジトリーのユーザー名、パスワード、および URL を用意する必要があります。 また、チーム・エリアのメンバーである必要があります。
コラボレーションの対象となるストリームの名前が分からない場合は、lscm list streams -r nickname を使用して、自分にアクセス権限があるストリームをリストできます。 以下に例を示します。
$ lscm -a y list streams -r l DeLorian Upgrades Home Energy Converter Doc Brown's playpen
作業を行うストリームが分かったら、変更を入れるリモート・ワークスペースを作成できます。 以下に例を示します。
$ lscm create workspace -r l myNewWorkspace -s "DeLorian Upgrades" ワークスペース (8551) "myNewWorkspace" が正常に作成されました。
-s パラメーターを追加して、ワークスペースのコラボレーションの対象となるストリームを指定します。 新規ワークスペースでは、そのストリームがデフォルトのフロー・ターゲットとなり、そのストリームの状態がワークスペースの初期状態になります。
リモート・ワークスペースをロードするには、以下のようにします。
$ lscm load myNewWorkspace -r l /flux.capacitor/requirements.txt のダウンロード中 (0 B) /flux.capacitor/diagrams/design.cad のダウンロード中 (0 B)
ソース管理 CLI からは、ファイルの変更、ファイルのチェックイン、新しい変更の受諾、および変更の提出などの標準的なワークフローに従うことができます。
CLI のチェックインおよび提出のアクションは、Eclipse クライアントの場合と同じです。 チェックインによりローカル・ディスクからリモート・ワークスペースに変更がプッシュされ、提出によってリモート・ワークスペースからストリームに変更がプッシュされます。
以下の CLI の例では、いくつかのファイルを変更しており、何が変更されたかを status を実行して判別しています。
$ lscm status
ワークスペース: (8551) "myNewWorkspace" <-> (8552) "DeLorian Upgrades"
コンポーネント: (8553) "Flux Capacitor"
ベースライン: (8554) 1 "Initial Baseline"
未解決:
-c /flux.capacitor/requirements.txt
発信:
変更セット:
(8555) --$ "Initial CAD"
status コマンドは、すべての共有ディレクトリーで変更をスキャンします。これには長時間を要する場合があります。 リモート・ワークスペースとストリームの比較のみを表示する場合は、lscm status –n を実行することで、ローカル・ディスク・スキャンを無視できます。
変更をコミットするには、lscm checkin を使用します。
$ lscm checkin flux.capacitor/
コミット中...
ワークスペース: (8551) "myNewWorkspace" <-> (8552) "DeLorian Upgrades"
コンポーネント: (8553) "Flux Capacitor"
発信:
変更セット:
(8556) --@ <コメントなし>
この例では、暗黙的に新規の変更セットが作成されます。 出力には、コミット中にファイルおよびフォルダーを受け取った変更セットがリストされます。
変更セットの作成後は、それをワークアイテムに関連付けて、コメントを追加することができます。 ワークアイテムを割り当てるには、lscm changeset associate を使用します。 コメントを設定するには、lscm changeset comment を使用します。
lscm status を実行することによって、ストリーム内の状況を定期的に表示することができます。
$ lscm status -C
ワークスペース: (8551) "myNewWorkspace" <-> (8552) "stream19_test_max_results_1256765247692134"
コンポーネント: (8553) "Flux Capacitor"
ベースライン: (8554) 1 "Initial Baseline"
発信:
変更セット:
(8556) --@
変更:
---c /flux.capacitor/requirements.txt
着信:
変更セット:
(8615) --$ "Initial layout"
変更:
---c /flux.capacitor/diagrams/design.cad
-C フラグは、変更セットの内容を表示します。
上記の例では、design.cad に対して着信する変更が 1 つあります。 この変更は、変更セットにあるどのファイルも変更しないため、受諾することができます。
lscm accept を実行します。
$ lscm accept -v
リポジトリー: https://localhost:9443/jazz/
ワークスペース: (8551) "myNewWorkspace"
コンポーネント: (8553) "Flux Capacitor"
変更セット:
(8615) ADMIN --$ "Initial layout"
変更:
--c /flux.capacitor/diagrams/design.cad
場合により、既に変更したファイルが、着信する変更によって変更されることがあります。
以下の例では、計画ミーティングのメモが含まれるように flux.capacitor/requirements.txt を変更し、ファイルをチェックインして、status を実行します。
$ lscm status -C
ワークスペース: (8551) "myNewWorkspace" <-> (8552) "stream19_test_max_results_1256765247692134"
コンポーネント: (8553) "Flux Capacitor"
ベースライン: (8554) 1 "Initial Baseline"
発信:
変更セット:
(8617) -#@ "Update from November planning meeting"
変更:
-#-c /flux.capacitor/requirements.txt
着信:
変更セット:
(8616) -#$ "Results of initial trials"
変更:
-#-c /flux.capacitor/requirements.txt
衝突が発生しました。変更したファイルは、ストリームに対する変更を提出した別のユーザーによっても変更されています。 関係するファイルおよび関係する変更セットの前にある # によって衝突が示されます。 別名 8616 の変更セットを受諾すると、競合が発生します。
$ lscm accept 8616 -v -i
リポジトリー: https://localhost:9443/jazz/
ワークスペース: (8551) "myNewWorkspace"
コンポーネント: (8553) "Flux Capacitor"
変更セット:
(8616) ADMIN -#$ "Results of initial trials"
変更:
!-c /flux.capacitor/requirements.txt
次のワークスペースには、受諾後にも競合があります:
myNewWorkspace
競合を解決する際には、「scm resolve」、「scm conflicts」、または「scm status」を実行すると便利です。
-i はファイルに競合マーカーを挿入します。競合マーカーは、他のソース管理システムで使用されるマーカーと似ています。
変更のリスト内にある ! は、そのファイルが競合していることを示します。
scm conflicts を実行することにより、現在ロードされているコンポーネント内の競合のリストを表示できます。
ファイルには、問題を示すインプレース競合マーカーが以下のように含まれています。
- Must not need any more than 1.5 gigawatts of power - Determine minimum necessary speed <<<<<<< mine - Twin Pines parking lot? ======= - Initial trials suggest 60kmh >>>>>>> proposed
<<<<<<< mine と等号の間にある行は、ワークスペースにある変更セット内の行です。 等号と >>>>>>> proposed の間にある行は、着信する変更セット内の行です。 lscm conflicts -m flux.capacitor/requirements.txt を実行することで、元のファイルを取得できます。 着信するバージョンを取得したい場合には、lscm conflicts -p flux.capacitor/requirements.txt を実行することができます。 -m は mine の短縮形、-p は proposed の短縮形です。
提案された内容を使用して変更を解決します。 以下のように、ファイルから競合マーカーを消去します。
- Must not need any more than 1.5 gigawatts of power - Determine minimum necessary speed Initial trials suggest 60kmh
lscm resolve を実行して、変更をコミットし、チェックインされたバージョンを使用して競合が解決されたことをリポジトリーに通知します。
lscm resolve -c flux.capacitor/requirements.txt
出力がない場合は、競合が解決されたことを示しています。
-c は、チェックインされたバージョンを使用して競合を解決すべきであることを示します。 -p を使用して、提案されたバージョンを使用して解決することもできます。
さらに変更を行うことも、lscm deliver を使用して変更セットを提出することもできます。
$ lscm deliver "myNewWorkspace" から "DeLorian Updates" に変更を提出中 フローするベースラインはありません。
ファイルの特定の行をだれが変更したかを判別するには、lscm annotate を実行します。
$ lscm annotate flux.capacitor/requirements.txt 1 Marty (8556) 2009-11-04 - Must not need any more than 1.5 gigawatts of power 2 Marty (8556) 2009-11-04 - Determine minimum necessary speed 3 Doc (8616) 2009-11-04 Results of initial t - Initial trials suggest 60kmh
注釈の出力は 6 列からなります。
異なるバージョンのファイルを比較するには、標準パッチを生成する scm diff を使用します。
コミットされていない変更を削除するには、scm undo を使用します。
このセクションでは、他のユーザー用の Rational Team Concert ソース管理を構成する管理者が主に使用する、拡張コマンドについて説明します。 ほとんどのユーザーは、既存のストリームからワークスペースを作成してロードするだけです。
コンポーネントとは、ソース・コードの論理グループをすべて保持した、1 つのソース・ツリー・グループです。
プロジェクトが大きくなるにつれて、新規のソース・ツリーを追加する必要が生じる場合があります。 既存のコンポーネントに変更を保持させても意味がない場合、新規コンポーネントを追加する必要があります。
$ lscm create component "Flux Capacitor" "DeLorian Upgrades" -r l コンポーネント (8553) "Flux Capacitor" が正常に作成されました。
上記の例では、ストリーム DeLorian Upgrades に新規コンポーネントを作成しました。 そのストリームとコラボレーションするワークスペースを持つユーザーには、そのコンポーネントの追加が、着信する変更として表示されます。 それらのユーザーは、着信する変更を受諾すると、コンポーネントの内容を受け取ります。
新規ファイルをその目的用に作成されたコンポーネントに追加する場合、ユーザーはこのタスクを、share サブコマンドを使用して実行できます。 Rational Team Concert ソース管理 では、ディレクトリーおよびフォルダーはワークスペース内でのみ共有することができます。 ユーザーは、新規コンポーネントをリモート・ワークスペースに追加する必要があります。
$ lscm workspace add-component -r l myNewWorkspace 8553 コンポーネント (8553) "Flux Capacitor" が正常に追加されました。
上の例で、別名 8553 は、前の例から新規に作成されたコンポーネントを指しています。
これで新規コンポーネントがワークスペース内に追加されました。ユーザーはワークスペースでソース・ツリーを share する必要があります。
$ lscm share -r l myNewWorkspace 8553 flux.capacitor ファイルのアップロード中... 正常に共有されました。
上の例では、このアクションにより、ディレクトリー flux.capacitor の内容が myNewWorkspace というリモート・ワークスペースにアップロードされ、それが 8553 によって指定されたコンポーネント (直前のステップの Flux Capacitor) に追加されます。
この情報はお役に立ちましたか? Jazz.net でフィードバックをお送り頂けます (登録が必要です): フォーラムにコメントを記入したり、バグを送信したりすることができます。