Perforce客户端映射特定的修订/更改列表

时间:2014-09-17 09:42:31

标签: perforce perforce-client-spec

有没有办法使用客户端映射设置perforce工作区到某些元素的特定修订版?

E.g:

//depot/...                 //localpath/...
//depot/external/...@117    //localpath/external/...

在这种情况下,第一行应将整个depo映射到localpath,但external子文件夹应映射到external depot文件夹的修订版117。

我知道该语法不起作用,但有没有办法使用 客户端映射来实现这一目标?

2 个答案:

答案 0 :(得分:4)

在Perforce服务器的2014.2版本中,有一个有趣的新功能可以满足您的需求:

#770674 (Bug #1648) **
    Client specs now support an optional 'ChangeView' field that
    locks certain depot paths to a particular changelist level:

    ChangeView:
        //depot/path/...@1000

    Revisions belonging to files under those paths will not be
    visible if they were submitted after the given changelist.
    Files mapped in the ChangeView may not be submitted.

答案 1 :(得分:1)

不,无法映射文件的特定修订(通过标签或日期或其他)。

解决这个问题的方法是分支//depot/external/...@117  进入一个单独的路径,然后映射该路径:

p4 integrate //depot/external/...@117    //depot/external_v117/... p4
submit

然后客户端视图可能像:

//depot/...                 //yourclient/...
//depot/external_v117/...   //yourclient/external/...
-//depot/external/...         //yourclient/external/...

但正如您可能注意到的那样,仓库树很容易混淆。所以你应事先计划这样的结构。