Restricting TFS check-in policy to specific users

梦想的初衷 提交于 2019-12-05 23:59:49

问题


The title says it all really. Our team wants to somehow restrict a TFS check-in policy to some select users.

We are currently using something similar, but to restrict server paths. We have a Custom Path Policy policy attached to a Work Items policy in our project, and it is working as expected. I wondered if it would be reasonable to create another policy like that, that scopes a certain other policy to a group of predefined users.

We would like to use a feature like that with this code review policy, to enforce that code reviews are requested before check-in for the new developers that enter the company, but not for everyone.


回答1:


Here is my custom policy implementation. It allows to run child policy if user does not have certain permissions (is not member of certain group).

It can be used with custom path policy from TFS power pack and ColinsALMCornerCheckinPolicies Then it will be possible to ask for code review only for certain projects|files|folders and only if user has no permission to check-in without code review.

https://github.com/oleksabor/GroupMembershipPolicy

You have said that had migrated from TFS but I'd like to leave answer here because have not found solution for original question.




回答2:


There is no way to do this out-of-the-box, but you could indeed use the same process as the Custom Path Policy. You'd need to create and distribute a custom checkin policy to all your team members. Try using a tool like Reflector or dotPeek to inspect the Custom path Policy.

Then create your own Custom User Policy, it's a pretty simple class to implement, the core is the Evaluate method which would be almost a duplicate of the same method in the Custom path Policy. You can pop-up a simple custom windows forms dialog to show a List of users that this policy applies to (I'd personally create an option to use Blacklists as well as Whitelists).

By default you can find the custompathpolicy defined in this assembly:

C:\Program Files (x86)\Microsoft Team Foundation Server 2013 Power Tools\Check-in Policy Pack\Microsoft.TeamFoundation.PowerTools.CheckinPolicies.CustomPathPolicy.dll



来源:https://stackoverflow.com/questions/18900422/restricting-tfs-check-in-policy-to-specific-users

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!