ここにはいくつかの異なる概念があります。
単一のワークスペースを持つことも、複数のワークスペースを持つこともできます。
各ワークスペースには、ワークステーション上に独自のルート ディレクトリと、最近同期したファイルの独自のコピーがあります。
単一のワークスペースがある場合、'client -s' コマンドを使用してそのワークスペースがバインドされているストリームを切り替えることにより、そのワークスペースをあるストリームから別のストリームに切り替えることができます。このようにして、1 つのワークスペースを使用して、1 つのストリームでの作業と別のストリームでの作業を交互に行うことができます。Perforce サーバーの最新バージョン (2015.1+) では、このプロセスをさらに簡単にする「p4 switch」コマンドさえあります。
コマンド ラインで「client -s」を使用して単一のワークスペースをあるストリームから別のストリームに切り替えることは、ストリーム グラフでワークスペース アイコンを古いストリームから新しいストリームにドラッグ アンド ドロップすることとほぼ同じです。
また、複数のワークスペースを作成し、それぞれに独立したファイルのセットを同期して、各ワークスペースを個別に操作することもできます。コマンド ラインで、あるワークスペースから別のワークスペースに切り替えるには、使用するクライアントを「p4」コマンドに伝える方法を変更するだけです。これは、P4CLIENT 変数または「-c」フラグを使用して行うことができます。クライアント。例えば:
p4 -c client1 sync
対
p4 -c client2 sync
は、最初に同期するように p4 クライアントに指示しclient1
、次にを同期しますclient2
。または、次のこともできます。
p4 set P4CLIENT=client1
p4 sync
それから
p4 set P4CLIENT=client2
p4 sync
同じ効果を実現します (コマンド ラインで 1 つのワークスペースと別のワークスペースを切り替える)。
ただし、P4V には、コマンド ラインとは別の「現在のワークスペース」という独自の概念があり、P4CLIENT 変数を変更するだけでは、「ワークスペースを右クリックして、 「ワークスペースに切り替える」を選択します。」
P4V がどのワークスペースを現在のワークスペースと見なすかを変更するコマンド ライン コマンドに最も近いのは、コマンド ラインから P4V の別のコピーを呼び出し、その際に別のクライアント名を指定することだと思います。 、ここで説明されているように: http://www.perforce.com/blog/100114/p4v-secrets-calling-p4v-command-line
ただし、これにより、現在の P4V ウィンドウの現在のワークスペースを変更するのではなく、他のワークスペースを含む新しい P4V ウィンドウが表示されると思います。
別の方法として、Autoit ( https://www.autoitscript.com/site/ ) などの Windows GUI 自動化ツールの 1 つを使用して、メニュー バーの [接続] メニューを使用するスクリプトを作成し、 Autoit 経由で Switch to Workspace... ダイアログを操作します。