perforce可以为同一个视图拥有两个客户端吗?

时间:2015-11-19 21:38:01

标签: synchronization root perforce

我有一个perforce客户端perforce.clientA,它具有以下映射映射

//allprojects/... //perforce.clientA/...

然后,我在所有项目perforce.clientB

下为特定项目创建了一个客户端

/ /allprojects/myProject/... //perforce.clientB/ ...

当我为clientB运行p4 sync时,它失败并显示错误

Path '/location/to/clientB/...' is not under client's root 'location/to/clientA'.

项目是否可能位于两个客户端空间中?我做错了什么?

1 个答案:

答案 0 :(得分:3)

当您为clientB运行同步时,您需要告诉服务器您正在同步clientB;错误消息表明您已经告诉服务器您正在使用clientA(可能隐含地通过环境变量),但是您给了它一个与clientB一起的本地路径,并且无法通过clientA&转换#39;映射。明确指定特定命令的客户端规范的方法是-c全局选项,例如:

p4 -c clientB sync

这对于经常使用来说显然很麻烦;更简单的方法是为每个客户端创建一个P4CONFIG文件,例如:

p4 set P4CONFIG=.p4config
echo P4CLIENT=clientA>/location/to/clientA/.p4config
echo P4CLIENT=clientB>/location/to/clientB/.p4config

完成此操作后,cd到客户端根目录下的某个位置会切换到该客户端。