3

Clearcase には、次のようなパスを持つ VOB があります。

\Department\ProductGroup\Product1\Development

次のような構成仕様のビューがあります。

element * CHECKEDOUT
element * .../mybranch/LATEST
element * /main/LATEST -mkbranch mybranch
load \Department\ProductGroup\Product1

Product1 のすべてのソース コードは、Development ディレクトリにあります。このディレクトリの外には、気にするものは何もありません。コード内のすべての参照は、このディレクトリに対して相対的です。

上記の Clearcase ビューをディレクトリ c:\dev に作成しました。

現在、上記のセットアップによりディレクトリが作成されます。

c:\dev\Department\ProductGroup\Product1\Development

すべての親ディレクトリDevelopmentが空です。次のディレクトリだけが必要です。

c:\dev\Product1  

c:\dev\Product1VOB パスにマップされる場所\Department\ProductGroup\Product1\Development。これは可能ですか?

4

1 に答える 1

1

1/ \Department\ProductGroup\Product1\Development だけをロードしないのはなぜですか?

load /Department/ProductGroup/Product1/Development

注: ' /' よりも簡単に ' 'を使用でき\、Windows 構成仕様はそれを正しく解釈します。

1bis/一般的なルールを守りたい場合は、いくつかの「クリーニングルール」を使用できます

この構成仕様を検討してください
最初に動的ビューでテストして、すばやく確認します-つまり、無限の更新リロード手順が不要です-結果が必要なものと一致する場合:ファイルは下にDevelopmentあり、他の場所にはファイルはありません)

element * CHECKEDOUT

# read/write selection rule for the directory and sub-directory
# where you need to work
element /Department/ProductGroup/Development/... .../mybranch/LATEST
element /Department/ProductGroup/Development/... /main/LATEST -mkbranch mybranch

# specific selection rule for the parent directories of Development
# those rules do not contain a mkbranch directive
element /Department/ProductGroup  .../mybranch/LATEST
element /Department/ProductGroup /main/LATEST
element /Department  .../mybranch/LATEST
element /Department /main/LATEST

# cleaning rule right there: anything outside /Department/ProductGroup/Development
# will not be selected, hence not loaded
element /Department/* -none

load \Department

そうすれば、常に同じロード ルールを維持でき、load \Department選択ルールによってクリーニングが行われます。

2/ パスの問題に関しては、Symlink を使用できますが、最も簡単な方法はsubstを使用することです

subst X: c:\dev\Department\ProductGroup\Product1\Development

そして、X:\ 内でスナップショット ビューを使用し続けることができます。

ただし、ClearCase には次のものが必要なため、これは機能しません。

  • view.dat (ディレクトリ ツリーを示す隠しファイルは、実際にはスナップショット ビューです)
  • vob (これはDepartmentあなたの場合です。ProductGroup\Product1\Developmentは Vob 内のパスですDepartment)

    X:>ct lsview -l -full -pro -cview cleartool: エラー: 現在のビューのビュー情報を取得できません: ClearCase オブジェクトではありません。X:>ct ls cleartool: エラー: パス名が VOB 内にありません: "."

これらと同じ理由で、Windows 上のJunctionとのハードリンクは機能しません

c:\dev>junction Product1 Department\ProductGroup\Product1
Junction v1.05 - Windows junction creator and reparse point viewer
Copyright (C) 2000-2007 Mark Russinovich
Systems Internals - http://www.sysinternals.com

Created: C:\dev\Product1
Targetted at: C:\dev\Department\ProductGroup\Product1

C:\cc\xxx>ct ls
cleartool: Error: Pathname is not within a VOB: "."

だからあなたができることは次のとおりです。

subst X: c:\dev

これを 1/ の特定のロード ルールまたは 1bis/ のクリーニング ルールと組み合わせると、次のようになります。

  • 少し短いパス
  • 余分な空のサブディレクトリはありません

2bis/「よこしまな」解決策:

ClearCase エクスプローラーから、Developmentからに移動Department\ProductGroup\Product1Departmentます。その移動は ' mybranch' バージョン ツリー内に記録され、 で作業している他のユーザーには表示されません/main/LATEST

次に、subst上記の 'my​​branch' 内で作業しますDepartment\Development

X:\Department\Development

公開したいときは、逆の動きをします。

于 2009-02-12T06:39:49.003 に答える