强制"file not under client's root"错误消息的麻烦



我正在通过VS2010添加一个要执行的项目,但项目中的所有文件都会出现此错误'file' not under client's root。我似乎想不通。

以下是我正在做的事情:

1) 打开尚未执行的VS2010项目。

2) 我选择将独奏添加到性能(从"文件">"源代码管理">"添加解决方案"菜单)。

3) 我选择了一个新的工作空间。它将显示工作区的属性。根文件夹默认为c:\Users\My.Name。我将其更改为项目所在的文件夹。我还更改了视图,使其指向depart\main\new_project。

它似乎已经添加了项目,但当我签入文件时,它就不起作用了!它为'file not under client's root'

我也直接去performce查看相应工作区的设置。在仪表板中,它显示一个错误:

P4V is having trouble translating the location "c:Usersuser.NameDocumentsCodeMy_Project" to a valid workspace location. To filter using this location, drag the folder from the workspace tree to the workspace folder field or include the depot location in your workspace view.

有人能告诉我为什么这不起作用吗?

更新我的工作区映射是这个

Client:  omega
Owner:   User.Name
Root:    C:UsersUser.NameDocumentsVisual Studio 2010ProjectsOmega
LineEnd: local
View:
//depot/main/omega/...     //omega/...

如果在"挂起"选项卡打开时出现此错误,则可能会出现以下问题!您可能看不到整个筛选器(即,某些筛选器可能在视图之外)。将鼠标悬停在筛选器下方的"窗格边框"上,直到光标发生变化,以便展开"筛选器窗格"。有一个过滤器可能会显示,"与以下任何文件路径匹配的文件:"确保您没有选择错误的文件路径。删除筛选器或选择"当前depor或工作区树选择"。

我认为您的客户端有一个不同的路径,您的代码也在不同的路径中。从你的P4V错误,我看到的路径是:

c:Usersuser.NameDocumentsCodeMy_Project

但您的客户端根路径是:

C:UsersUser.NameDocumentsVisual Studio 2010ProjectsOmega

在上述场景中,只有"C:\Users\User.Name\Documents"的路径是常见的,之后您的客户端根目录和项目根目录不同。如果要从My_Project文件夹签入代码,请将客户端根目录更改为指向该目录。你可以通过在命令行上这样做

p4 client <client name>

或者在P4V的"工作区"视图中更改它。

此外,请确保在路径周围使用",因为它有带空格的文件夹名称。

希望这能有所帮助。

您可能犯的一个错误是在Visual Studio 2012中选择了错误的工作区。就这么做了,花了几分钟抓我的头。

我猜Perforce在您的路径中的空格有问题。试着在它周围加上引号。

发件人http://www.perforce.com/perforce/doc.current/manuals/p4guide/03_using.html:

文件名、路径名和标识符中的空格使用引号将包含空格的文件或目录括起来。例如:"//depot/dev/main/docs/manuals/recommended configuration.doc"如果在其他Perforce对象(如分支)的名称中指定空格名称、客户端名称、标签名称等,空格为Perforce服务器自动转换为下划线。

我在项目构建过程中显示了类似的错误消息。帮助的是删除.soo文件并重新加载项目,如Visual Studio如何';与Perforce的源代码管理集成工作?

检查客户端根目录中指定的路径。如果这不是一个有效的路径,那么你会遇到这个错误

Root:   /a/b/c/d

如果这不是一个有效的根,你最终会得到以下错误

Path '/a/b/c/d/...' is not under client's root '/a/b/c/d'

只要纠正根指向的路径,你就应该是好的

这个确切的问题与我的"PENDING VIEW"有关。它当时为默认工作区设置了一个搜索过滤器,每当我切换到另一个工作区时,它都会显示错误对话框。

交易是我更改了工作区名称,过滤器不再有效。

我清除了过滤器(在挂起的视图中),错误消失了。

相关内容

最新更新