如何在 Perforce 流中包含一个来自被忽略的文件夹结构的特定文件?

How do I include one specific file from an ignored folder Structure in a Perforce stream?

我正在为我的 Cryengine 项目设置一个 Perforce Depot,我想忽略 /bin 文件夹,但包含位于 /bin/win_x64/Game.dllGame.dll 文件。我没有使用 .p4ignore 文件,但我是通过 Helix Visual Client 中的流中的忽略列表来执行此操作的,因此它在所有机器上默认工作。

我发现有几个页面说我可以通过在我想要包含的内容前面添加 ! 来添加例外以忽略列表。我已经尝试了几种不同的方法,但它似乎不起作用。

首先我是这样尝试的:

/bin/...
!Game.dll

然后像这样:

/bin/...
!/bin/win_x64/Game.dll

但是 none 似乎起作用了。

当我尝试将文件添加到软件仓库时,无论我尝试什么,它都会显示 file(s) not in client view

Ignored 字段优先于其他所有字段并且没有排除语法。但是,如果您将 bin 文件夹放在 Paths 字段中,您可以添加排除项然后覆盖它:

Paths:
    share   ...
    exclude bin/...
    share   bin/win_x64/Game.dll

这给你一个看起来像的视图(添加空白以提高可读性):

C:\Perforce\test>p4 where ...
 //stream/main/...                  //Samwise-dvcs-1509687817/...                  c:\Perforce\test\...
-//stream/main/bin/...              //Samwise-dvcs-1509687817/bin/...              c:\Perforce\test\bin\...
 //stream/main/bin/win_x64/Game.dll //Samwise-dvcs-1509687817/bin/win_x64/Game.dll c:\Perforce\test\bin\win_x64\Game.dll