例如,客户端规范的某些部分映射来自“已发布”库的文件。有没有办法让这些所谓的已发布地图强制为只读,即它们无法打开进行编辑?
例如(忽略[不可编辑]):
//Development/foo/... //client/foo/...
//Published/bar/1.0/... //client/bar/... [not editable]
//Published/qux/2.0/... //client/qux/... [not editable]
换句话说,我想阻止文件被打开(例如,默认情况下被锁定),我想知道是否可以在客户端规范级别强制执行。
如果没有,是否可以使用“已发布”的软件仓库对某些用户进行只读?
答案 0 :(得分:5)
正确执行此操作的唯一方法是通过Perforce权限表。您可以使用p4 protect命令或通过P4V中的Admin菜单进行此操作。
只需打开它 - 您需要管理员权限 - 并在表格中添加一行以将这些文件标记为只读。这将允许您的客户同步到文件,但不允许打开进行编辑(或删除等)。
您在权限表中拥有终极控制权。您还可以对此进行优化,以允许只有一部分用户能够修改该文件,而其他人都将其视为只读。
Perforce管理指南在权限表上相当不错。直接链接here。
答案 1 :(得分:1)
您可以使用p4 lock,禁止其他人提交更改。
您还可以管理用户访问权限,请参阅p4 protect和p4 group。我相信这可以在逐个文件的基础上使用。
答案 2 :(得分:0)
您可以创建一个虚拟客户端并在虚拟客户端上锁定这些文件。然后,不要让任何人使用该客户端,例如把它放在服务器上。