Version control Performce p4同步问题

Version control Performce p4同步问题,version-control,perforce,Version Control,Perforce,我已经通过GUI在以下路径中使用p4v创建了一个工作区: /home/RND/abrodov/Perforce/abrodov_tlv-cc-32_93 我正在尝试使用p4命令,例如,我尝试过: p4 sync -f 我得到了以下错误: Client 'tlv-cc-32' unknown - use 'client' command to create it. 这是我用于P4的环境变量: export p4v=/opt/p4v-2014.2.973065/bin export P4POR

我已经通过GUI在以下路径中使用
p4v
创建了一个工作区:

/home/RND/abrodov/Perforce/abrodov_tlv-cc-32_93
我正在尝试使用
p4
命令,例如,我尝试过:

p4 sync -f
我得到了以下错误:

Client 'tlv-cc-32' unknown - use 'client' command to create it.
这是我用于
P4
的环境变量:

export p4v=/opt/p4v-2014.2.973065/bin
export P4PORT=IP:PORT
export P4USER=$USER
export P4CLIENT=$HOSTNAME
alias p4v="p4v &"
export PATH=$p4v:$PATH

由于服务器不知道客户端“tlv-cc-32”,因此该名称不能是您正在与P4V一起使用的客户端的正确名称

要获取所有工作区名称的列表,请查找您正在与P4V一起使用的名称。(或者,在P4V中,使用“编辑当前连接”菜单查看“工作区名称:”)

然后将P4CLIENT设置为P4V工作区的正确名称,并使用“p4 info”验证服务器是否将该客户端名称与工作站的根目录相关联

然后

会很好用的


(不过,有人想知道,为什么您觉得有必要运行“p4 sync-f”?)

摘要

删除所有多余的空格

详细解释。

P4命令也会由于额外的空格而引发此错误。 在通过环境变量(windows)设置p4全局选项时,我遇到了类似的问题

sahil是我的工作区名称。p4将该名称解释为“sahil”(带空格),因此未能找到它。以下措施奏效了

set GLOBAL_OPTIONS="-csahil"                  REM **CORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path
由于以下两个命令中的相同原因,第一个命令无法工作,第二个命令工作正常

p4 "-c sahil" sync //file/path REM **INCORRECT**
p4  -c sahil  sync //file/path REM **CORRECT**
空间造成了这一难以察觉的微妙问题。在我的例子中,工作区名称“sahil”确实存在,但是我不知道p4如何解释空间

PS:这不是问题的作者面对这个错误的原因,但这是p4可以抛出这个错误的原因之一,我花了一些时间才弄明白。

你说的“编辑当前连接”在哪里?
set GLOBAL_OPTIONS="-c sahil"                  REM **INCORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path
set GLOBAL_OPTIONS="-csahil"                  REM **CORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path
p4 "-c sahil" sync //file/path REM **INCORRECT**
p4  -c sahil  sync //file/path REM **CORRECT**