簡體   English   中英

perforce p4 同步問題

[英]perforce p4 sync issue

我在以下路徑中使用p4v通過 GUI 創建了一個工作區:

/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 一起使用的客戶端的正確名稱。

p4 clients -u $P4USER

獲取所有工作區名稱的列表,然后找到與 P4V 一起使用的名稱。 (或者,在 P4V 中,使用“編輯當前連接”菜單查看您的“工作區名稱:”)

然后將 P4CLIENT 設置為 P4V 工作區的正確名稱,並使用“p4 info”來驗證服務器是否將該客戶端名稱與工作站的根目錄相關聯。

然后

p4 sync -f

會工作得很好。

(不過,有人想知道,為什么您覺得需要運行“p4 sync -f”?)

概括

刪除任何多余的空格。

詳細解釋。

由於額外的空格,P4 命令也可能拋出此錯誤。 通過環境變量(Windows)設置 p4 全局選項時,我遇到了類似的問題。

set GLOBAL_OPTIONS="-c sahil"                  REM **INCORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path

sahil 是我的工作區名稱。 p4 將名稱解釋為“sahil”(帶空格),因此未能找到它。 以下工作。

set GLOBAL_OPTIONS="-csahil"                  REM **CORRECT**
p4 %GLOBAL_OPTIONS% sync //file/path

出於同樣的原因,在以下 2 個命令中,第一個無法工作,第二個工作正常。

p4 "-c sahil" sync //file/path REM **INCORRECT**
p4  -c sahil  sync //file/path REM **CORRECT**

空間導致了這個難以察覺的微妙問題。 在我的情況下,工作區名稱“sahil”確實存在,但是我不知道 p4 如何解釋空格。

PS:不是問題的作者面臨這個錯誤的原因,而是 p4 可以拋出這個錯誤的原因之一,我花了一些時間才弄清楚。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM