テクニカルノート027  


リリースノートを作成する

タスク

PERFORCEを使用してリリースノートを作成します。

解決策

以下の例では、前回のリリースのラベルを "LABEL_97.02_3549" として作成したと想定します。 また、"97.02/3549" に導入された最後の変更が 3549 であったことが分かっています。 "97.02/3549" は //depot/main/p4/... のコードラインから作成されました。

新しいリリース向けに、すべての変更は同一のコードライン //depot/main/p4/... に導入され、コードには "LABEL_97.02_3960" というラベルが付けられました。


2つのラベル間での変更

両方のリリースにラベルが付けられていれば、操作はかなり簡単になります。 そのラベルがどのコードラインに由来するものか分からない場合、ラベルを見てみましょう。 ラベルが作られたコード領域を示すディポ構文を知っている必要があります。 最初に、ラベル "LABEL_97.02_3549" に導入されたすべての変更のリストを取得し、次にラベル "LABEL_97.02_3960" に導入されたすべての変更のリストを取得して、2つのファイルを比較します。 "-i" オプションは反映された変更を含むよう指定し、"-l" オプションは長いコメントを表示することに注意してください。 CHANGES というファイルは "97.02/3960" に導入されているが "97.02/3549" には入っていない変更のリストです。

ファイルCHANGESは、「97.02/3960」に入りましたが、「97.02/3549」にはなかった変化のリストです。
p4 changes -l -i //depot/main/p4/...@LABEL_97.02_3549 > FILE1
p4 changes -l -i //depot/main/p4/...@LABEL_97.02_3960 > FILE2
diff FILE1 FILE2 > CHANGES
                  
2つのジョブ間での変更

同様にして、2つのラベルの(または2つの変更の)間でどのジョブが修正されているかをチェックすることができます。
p4 jobs -l -i //depot/main/p4/...@LABEL_97.02_3549 > FILE1
p4 jobs -l -i //depot/main/p4/...@LABEL_97.02_3960 > FILE2
diff FILE1 FILE2 > JOBS
                  
2つのチェンジリスト間での変更

どのような変更が行われたかを把握しようとしているものの、ラベルがない場合には、「最新の」ファイルを持つクライアントからリリースしたことを前提に、チェンジ番号を使用することができます。 リリース "97.02/3549" がチェンジ 3549 のサブミット後に作成されたことが分かっていると想定します。 また、"97.02/3960" がチェンジ 3960 のサブミット後に作成されたことが分かっていると想定します。
p4 changes -l -i //depot/main/p4/...@3549 > FILE1
p4 changes -l -i //depot/main/p4/...@3960 > FILE2
diff FILE1 FILE2 > CHANGES
                  
チェンジリストとラベルとの間の変更

//depot/main/p4/... をチェンジ3960で最後にリリースしていて、これから最初のベータ・リリースを//depot/dev/p4/... のラベル "LABEL_97.3_4003"からリリースするという場合にはどうしたらよいでしょうか。同様に、マイニングの技法を使用します。 チェンジ 3960でメインラインに導入された変更を取得し、"dev" ラインに導入された変更を取得して、両者を比較します。
p4 changes -l -i //depot/main/p4/...@3960 > FILE1
p4 changes -l -i //depot/dev/p4/...@LABEL_97.3_4003 > FILE2
diff FILE1 FILE2 > CHANGES
                  
注意事項:

チェンジ番号の代わりにラベルを使用する際の1つの問題は、ラベルを使用しても、ファイルの削除だけを含むチェンジリストの情報は取得できないということ です。1つのラベルに属するファイルが、その後削除のみを含むチェンジリストで削除されると、それらのファイルは新しいラベルが作成されたときにクライアントで は使用できない状態になるため、調査対象のファイルセットには含まれなくなります。 この理由により、チェンジリスト番号を使用する方がより強力です。チェンジ番号を使用して変更の情報を抽出すると、削除のみである変更も取り込まれます。

 
戻る