0

スタジオで Perforce をセットアップしてきましたが、シンプルにするために Streams を使用することにしました。私が直面している問題の 1 つは、複数のフォルダーをストリームからワークスペース内の同じターゲット フォルダーに再マップできないことです。

オーバーレイ演算子 (+) については知っていますが、これはストリーム ビュー パスを設定するときに許可されません。Workspace Remap でやってみましたが、うまくいかないようです。基本的に私がやろうとしていることは

Dev/FolderA/... Dev/...
+Dev/FolderB/... Dev/...

FolderA と FolderB には、同じ名前を共有しない異なるファイルがあり、それらを同じフォルダーに配置することに関心があるのは、ローカル ドライブでのビルド目的だけです。

何か案は?

PS: これは perforce クライアントの仕様に似ていることは知っています。異なるデポ パスを同じクライアント ワークスペース パスにマップします。違いは、これは従来のローカル デポ ビュー (ストリームではない) でのみ機能することです。

ありがとう!

4

1 に答える 1

3

「+」行はオーバーレイ マッピングと呼ばれ、ストリーム ワークスペース ビュー仕様では使用できません。

ストリーム フレームワークには、生の Perforce にはない制約がいくつかあります。あなたが探している単純さは、これらの制約に依存しています。ビューに関してすでに気づいているかもしれないもう 1 つの制約は、'...this/example/...' や 'this/.../one' のような先頭または組み込みのワイルドカードを使用できないことです。

そのため、ネイティブの Perforce で慣れ親しんでいるのとまったく同じようにストリームを作成しようとすると、多くの利益が得られるわけではありません。他のフレームワークと同様に、ストリームを最大限に活用する最善の方法は、新たに開始し、その強みに基づいて新しいワークフローをスピンアップすることです。

そうは言っても、あなたが試すことができる卑劣なトリックがあります。ストリーム デポ パスをマップする静的な非ストリーム クライアント ビューを作成できます。非ストリーム クライアント ビューでは、任意のマッピング構文を使用できます。

ストリーム以外のビューは、ストリーム ファイルの同期と処理に使用できますが、送信には使用できません。ファイルを送信するには、ワークスペースをストリーム クライアントに切り替え、ファイルを送信し、ワークスペースを元に戻す必要があります。ビューの切り替え間で再同期しない限り、ローカル ディスク上でファイルが再配置されることはありません。

これがどれだけうまく機能するかは、使用しているクライアント ツールによって異なります。一部のツールでは、非ストリーム クライアントがストリーム ファイルを操作できない場合があります。他のツールはそれを許可するかもしれませんが、あなたがそれをすることを期待していないので、一貫性のない状態を示すかもしれません. そしてもちろん、このようにフレームワークを覆すことは、長期的には物事をより複雑にするだけかもしれません.

于 2013-02-10T08:10:35.063 に答える