控制SVN访问只能添加,而不是在SVN repo中添加一次修改

时间:2012-01-07 11:43:53

标签: svn

是否可以为用户提供add-new以及修改访问权限,并且只向其他用户添加新文件访问权限?简而言之,其他用户在向SVN提交文件后不应该修改任何内容。我们在SVN中有这种类型的访问控制吗?

据我所知,它只能被读或读/写。如果可能,请告诉我。

2 个答案:

答案 0 :(得分:1)

您可以使用svn pre-commit hook脚本执行此类操作。

您可以找到pre-commit hook here的好例子。

答案 1 :(得分:0)

简短的回答:不,这是不可能的。

答案很长:有很多理由说明为什么这种方法最终会失败,以下是其中一些:

  • Subversion完全不支持您希望拥有的授权。所以预提交钩子(在@Cedric_Julien的答案中提到)应包含所有逻辑和配置。
  • 预提交挂钩只能由系统管理员更改,因此每次要配置不同的内容时,都必须询问它们。
  • 每次用户提交新文件并且他犯了一些错误时,他都必须联系具有修改权限的其他类型的用户来纠正他的错误。即使只在每100个文件中发生这种情况,这也不是一个合理的过程。
  • 我无法想象为什么这个政策可能是合理的,在哪种情况下。通常,添加和更改文件的方式相同。我不知道任何具有这种细粒度访问控制的配置管理系统允许这样的事情。所以我怀疑实施类似的东西是不合理的。

抱歉,我认为你不应该这样做。也许您可以添加一些应用程序上下文,因此我们可以理解为什么它在您的情况下是合理的。