Can';不要在perforce中添加文件

Can';不要在perforce中添加文件,perforce,Perforce,据我所知,我的客户端设置正确: $ p4 client -o # A Perforce Client Specification. # ... Client: stephen-dev1-stephen Update: 2014/06/26 17:41:14 Access: 2014/06/26 17:45:47 Owner: StephenRasku Host: stephen-dev1 Description: Created by StephenRasku. Ro

据我所知,我的客户端设置正确:

$ p4 client -o
# A Perforce Client Specification.
# ...

Client: stephen-dev1-stephen

Update: 2014/06/26 17:41:14

Access: 2014/06/26 17:45:47

Owner:  StephenRasku

Host:   stephen-dev1

Description:
    Created by StephenRasku.

Root:   /home/stephen/Code

Options:    noallwrite noclobber nocompress unlocked nomodtime rmdir

SubmitOptions:  submitunchanged

LineEnd:    local

View:
    //depot/labs/products/component/SpamView-URI/... //stephen-dev1-stephen/SpamView-URI/...
    //version/... //stephen-dev1-stephen/version/...
    //thirdparty/... //stephen-dev1-stephen/thirdparty/...
    //starteam/... //stephen-dev1-stephen/starteam/...
    //specs/... //stephen-dev1-stephen/specs/...
    //release/... //stephen-dev1-stephen/release/...
    //projects/... //stephen-dev1-stephen/projects/...
    //main/... //stephen-dev1-stephen/main/...
    //features/... //stephen-dev1-stephen/features/...
    //dev/... //stephen-dev1-stephen/dev/...
    //depot/... //stephen-dev1-stephen/depot/...
文件存在:

$ pwd
/home/stephen/Code/SpamView-URI
$ ls mainline/EBUILD_VERSION mainline/package.sh mainline/ebuild
mainline/ebuild  mainline/EBUILD_VERSION  mainline/package.sh
但当我尝试添加它们时,它会抱怨:

$ p4 add mainline/EBUILD_VERSION mainline/package.sh mainline/ebuild
mainline/EBUILD_VERSION - file(s) not in client view.
mainline/package.sh - file(s) not in client view.
mainline/ebuild - file(s) not in client view.
有什么问题吗?我使用git p4 clone签出了该文件,如果这有区别的话。

检查客户端工作区规范中的“视图”行以确认 Perforce命令中使用的文件规范(或出现在错误消息中) 在您的工作区视图中。如果在尝试添加文件时看到错误, 例如,您可能希望检查映射以确认 文件位于客户端视图中的目录中

请参阅“客户端工作区视图”下的部分:

下面的文件就是这个目录结构吗

  /home/stephen/Code/SpamView-URI/mainline/EBUILD_VERSION
  /home/stephen/Code/SpamView-URI/mainline/package.sh
  /home/stephen/Code/SpamView-URI/mainline/ebuild
从第一条视图映射线判断:

  //depot/labs/products/component/SpamView-URI/... //stephen-dev1-stephen/SpamView-URI/...
我猜这就是他们应该走的路。 如果将“cd”放入“/home/stephen/Code/SpamView URI/mainline”
目录您可以添加这些文件吗?

正如您所注意到的,您的客户端规范不正确。用这两条线,

//depot/labs/products/component/SpamView URI///stephen-dev1-stephen/SpamView URI/。。。
//仓库///stephen-dev1-stephen/depot/…

您正在尝试映射//depot/labs/products/component/SpamView URI/下的文件。。。到//stephen-dev1-stephen/SpamView URI/。。。和//stephen-dev1-stephen/depot/labs/products/component/SpamView URI/。。。由于perforce从上到下读取,它将用第二个映射覆盖第一个映射,基本上删除第二个映射\


移动您的
//depot/labs/products/component/SpamView URI///stephen-dev1-stephen/SpamView URI/…
到最后一行,您应该没事。

它似乎忽略了我的
SpamView URI
映射行。我做了一个
p4同步//depot/labs/products/component/SpamView URI/…
,它将代码签出到
/home/stephen/code/depot/labs/products/component/SpamView URI
中,而不是预期的
/home/stephen/code/SpamView URI
。我将文件移到
…/code/depot/…
下,并从那里添加了它们。