我在 TFS 中有一个文件夹,并且我已授予贡献者权限,这意味着他们可以执行签出/签入/锁定等操作。但我不允许他们删除属于主文件夹的任何文件或子文件夹。如果您对此有任何想法,请告诉我。
问问题
497 次
3 回答
1
你不能,但另一方面,删除文件只会隐藏文件。为了“永久删除”一个文件,您需要对文件运行tf destroy,这要求用户是 tfs 管理员组的一部分。
在这里阅读更多
于 2013-10-01T12:07:24.853 回答
0
你不能。我认为这是你必须通过流程而不是技术来管理的事情,我担心。
任何操作(不包括销毁)都可以撤消。
于 2013-10-01T12:07:25.487 回答
0
正如已经说过的,这不能通过权限来完成。如果您绝对需要一种方法来防止这种情况(并且事后回滚删除是不够的),您有两种可能性:
- 使用签入策略警告用户他不应该删除元素。这可以被用户覆盖,所以它不是绝对的,但他们知道他们只能在你的许可下这样做。如果他们仍然未经许可签入,您仍然可以回滚。最大的缺点:每次更改策略时都需要向所有客户端 PC 分发 dll 文件,因为签入策略是在客户端执行的。
- 设置服务器端预签入检查。您可以针对TFS API编写以响应不同的事件,例如签入前、签入后等。在这些事件处理程序中,您可以执行检查,例如“删除操作是否包含在用户想要签入的更改中?” 如果是这种情况,则使操作失败。这不能被用户覆盖,但是要付出更多的努力来实现和维护恕我直言。
也就是说,我建议设置用户应该遵守的“签入约定”,并回滚他们不遵守的任何变更集。可能由变体 1 支持。提醒用户他正在做的事情是不允许的。
于 2013-10-01T12:33:20.523 回答