可以使Perforce客户端规范中映射的特定文件不可编辑吗?

时间:2009-06-18 00:10:46

标签: perforce perforce-client-spec

例如,客户端规范的某些部分映射来自“已发布”库的文件。有没有办法让这些所谓的已发布地图强制为只读,即它们无法打开进行编辑?

例如(忽略[不可编辑]):

//Development/foo/... //client/foo/...
//Published/bar/1.0/... //client/bar/... [not editable]
//Published/qux/2.0/... //client/qux/... [not editable]

换句话说,我想阻止文件被打开(例如,默认情况下被锁定),我想知道是否可以在客户端规范级别强制执行。

如果没有,是否可以使用“已发布”的软件仓库对某些用户进行只读?

3 个答案:

答案 0 :(得分:5)

正确执行此操作的唯一方法是通过Perforce权限表。您可以使用p4 protect命令或通过P4V中的Admin菜单进行此操作。

只需打开它 - 您需要管理员权限 - 并在表格中添加一行以将这些文件标记为只读。这将允许您的客户同步到文件,但不允许打开进行编辑(或删除等)。

您在权限表中拥有终极控制权。您还可以对此进行优化,以允许只有一部分用户能够修改该文件,而其他人都将其视为只读。

Perforce管理指南在权限表上相当不错。直接链接here

答案 1 :(得分:1)

您可以使用p4 lock,禁止其他人提交更改。

您还可以管理用户访问权限,请参阅p4 protectp4 group。我相信这可以在逐个文件的基础上使用。

答案 2 :(得分:0)

您可以创建一个虚拟客户端并在虚拟客户端上锁定这些文件。然后,不要让任何人使用该客户端,例如把它放在服务器上。