2012-03-27 8 views
2

私は、私たちの継続的な統合ビルドを最適化されているためにラベルを表示し、残りのボトルネックは次のClearCaseコマンドのようです:1800個のファイルとビューのために高速化のClearCaseは、継続的インテグレーション

cleartool.exe mklbtype -nc -ordinary [email protected]_example 

、これは6の上に取っています完了するまで数分。私たちのMSBuildタスクは半分になります。私はボトルネックの大部分がネットワーク帯域幅だと推測していますが、このビルドで使用されているファイルにどのようにラベル付けしているかもわかります。この上Baed

、私が質問している:我々は、効率的にソースコードファイルを

  1. を標識されるか、あるいは我々が実行することができ、より効率的なコマンドはありますか?
  2. このClearCaseコマンドが大部分の時間を費やしている場所を理解するために、より良いメトリックを得るにはどうすればよいですか?
  3. 以前のラベルは、ClearCaseのラベル付けを遅くしますか?
  4. 関連するClearCaseには、Gitサブモジュールやsvn:externalsと同様のものがありますか?現在、ビルドを行う前に、依存関係を含むすべてのビューを作成しています。

ありがとうございました。

答えて

1

cleartool mklbtypeはそれほど長い時間を取るべきではありません。ラベルの種類を作成することであり、ファイルのそれぞれに適用することではありません。
何かがある場合は、mklabelに時間がかかります。

ことに役立つかもしれない(現在の「ベースClearCaseの」利用とは反対に)UCMの方法論を適用する:

  • それは「コンポーネント」(ファイルのコヒーレントグループ、すなわちない「1800個のファイルを定義することができ強制"、これはかなり大きい)
  • " incremental baseline "は変更されたものだけを示します。
  • UCMコンポーネントは、(あなたがcomposite baselineのグループにそれらをすることができます)Gitのサブモジュールに少し似ているが、それはmentioned hereとし、「Why are git submodules incompatible with svn externals?」で、svn:externalと同じではありません。あなたがベースのClearCaseで立ち往生している場合

しかし、あなたは、標識すべてで立ち往生している、と最適化のための1つの会場は、それらのファイルのサブセットのみにラベルを付けることであろう。

+0

私はこのツールを嫌うもう一つの理由をありがとう - 基本的な機能は、製品の基本バージョンでは使用できません。私のリリースマネージャーは、CIビルドでは、開発サイクルのユーザー受け入れテスト段階に達するまで、ラベル付けを気にしないことを提案しました。思考? –

+0

または、これらのファイルの一部のみをインテリジェントにラベル付けすることをお勧めしますか? –

+0

@JohnZabroski私はあなたのリリースマネージャーに同意し、あなたのビルドを引き起こしているタイムスタンプを単に記録します。 **時間ベースの選択ルール**を使用して、その特定の時刻にコードを取得することができます** http://stackoverflow.com/questions/368086/clearcase-time-and-query/370008 #370008またはhttp://stackoverflow.com/questions/634509/clearcase-loading-older-version-of-a-specific-directory/635282#635282を例としてご覧ください。 – VonC

関連する問題