最近公司在我的推动之下要引入VSS进行源代码管理了,我觉得公司里面规范行的制度太少,特别是在开发过程中的规范就更少了,包括单元测试这样最基本的东西都没有真正的规范下来,所以我想通过VSS的使用,推广单元测试的概念,就算推广过程中有这样的或者那样的困难,但是这样的行动对公司是有利的,对个人也是有利的。现在的问题就是一个“度”了。
昨天看VSS的文档,发现了一个很大的问题啊:VSS的DATABASE是文件形式的数据库,只能通过FOLDER权限的设置对其进行权限控制,这个问题在MS的说明中也写的相当清楚,见下:
=========================================================================================
要保护 Visual SourceSafe (VSS) 数据库以及用于控制和管理 VSS 的文件,需要使用 Windows 的安全权限来限制访问。按照本文介绍的步骤,您可以锁定数据库,从而达到以下目的:
只有 VSS Windows 文件夹的 VSS 数据库管理员组中的成员才能执行管理员任务,包括运行 Analyze 和恢复存档的 VSS 文件与项目。 设置 VSS 安全性之后,所有的 VSS 管理员和 VSS 用户还可以按设置之前的方式使用 VSS。 不是 VSS 用户的人员将无权访问 VSS 所在的网络共享位置,因此也就无法访问数据库。 锁定数据库不能提供:
项目级安全性。您可以使用 VSS Administrator 程序为特定的 VSS 项目或各别 VSS 用户设置权限和分配任务,但所有 VSS 用户必须都拥有相同的 Windows 文件夹权限。因此,所有 VSS 用户,不管他们在 VSS Administrator 程序中指定的项目级权限如何,均可以访问共享文件夹,并且可以完全控制所有的 VSS 数据,但那些用于控制和管理程序及数据库的文件除外。请勿使用共享数据库来存储包含敏感信息的文件,例如工资信息或法律文档。 只读 VSS 用户。如果要限制某些 VSS 用户,使其只能读取 VSS 数据库中的文件,那么建议您不要将这些人员设为 VSS 用户,而应该创建一个影子文件夹,并授予这些人访问此文件夹的权限。 !以上部分在VSS HELP中有详细说明!
=========================================================================================
红色的即使我关心的问题,我查了下WWW,为什么大家对这个问题没有关注呢?难道只有用所谓的“职业道德”去约束?我想凡是没有制度的东西都是很脆弱的。拥有DATA文件夹权限的USER可以通过“\”的共享方式完全访问DATA文件夹,这应该是一个隐藏的灾难吧?
但是除了这点,VSS还是不错的,特此说明。