首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >强制p4同步问题

强制p4同步问题
EN

Stack Overflow用户
提问于 2015-01-13 20:06:30
回答 2查看 13.2K关注 0票数 7

我已经使用p4v在下面的路径中通过图形用户界面创建了一个工作区:

代码语言:javascript
复制
/home/RND/abrodov/Perforce/abrodov_tlv-cc-32_93

我正在尝试使用p4命令,例如,我已经尝试过:

代码语言:javascript
复制
p4 sync -f

我得到了以下错误:

代码语言:javascript
复制
Client 'tlv-cc-32' unknown - use 'client' command to create it.

这是我用于P4的环境变量

代码语言:javascript
复制
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
EN

回答 2

Stack Overflow用户

发布于 2015-01-13 23:05:58

因为客户端'tlv-cc-32‘对于服务器是未知的,所以它一定不是您正在与P4V一起使用的客户端的正确名称。

代码语言:javascript
复制
p4 clients -u $P4USER

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

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

然后

代码语言:javascript
复制
p4 sync -f

将会工作得很好。

(然而,有人想知道,为什么你觉得有必要运行'p4 sync -f'?)

票数 11
EN

Stack Overflow用户

发布于 2020-02-22 01:30:31

摘要

删除任何多余的空格。

详细解释。

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

代码语言:javascript
复制
set GLOBAL_OPTIONS="-c sahil"                  REM **INCORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path

sahil是我的工作区名称。p4将该名称解释为“sahil”(带空格),因此找不到它。下面的方法起作用了。

代码语言:javascript
复制
set GLOBAL_OPTIONS="-csahil"                  REM **CORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path

出于同样的原因,在以下两个命令中,第一个命令无法工作,第二个命令工作正常。

代码语言:javascript
复制
p4 "-c sahil" sync //file/path REM **INCORRECT**
p4  -c sahil  sync //file/path REM **CORRECT**

空间导致了这个很难检测到的微妙问题。在我的例子中,工作区名称"sahil“确实存在,但是我并不知道p4是如何解释空格的。

PS:不是问题的作者面临这个错误的原因,但它是p4抛出这个错误的原因之一,我花了一些时间才弄清楚。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27921791

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档