使用TFS 2015(特别是master)保护git分支免受贡献者的删除

问题描述 投票:1回答:2

使用TFS 2015

问题1:有没有办法阻止贡献者删除特定分支(例如主人)?

我的测试表明,没有办法阻止具有Contribute权限的用户能够删除主分支。

除此之外,似乎没有办法恢复已删除的分支,因为这是一个“破坏”操作。

如果我错了,请纠正我。

问题2:使用Contribute权限的用户是否无法保护分支不被删除?

问题3:在TFS 2015中,是否有办法恢复远程存储库上已删除的分支,即TFS 2015不执行逻辑删除,而是销毁?

git tfs2015
2个回答
0
投票

我认为你是在一个错误的前提下运作的。您似乎认为分支与该分支的历史存在某种关系。那是不对的。

分支只是提交的指针。提交有孩子和父母。历史由父和子提交之间的关系维护,而不是由分支维护。

如果删除了分支,则只需检查分支指向的提交并重新创建分支。

实际上,这应该不是一个主要问题。


0
投票
  1. 您需要在分支级别为Deny设置重写和销毁历史记录(强制推送)权限以保护分支:

enter image description here

  1. 您可以执行git reflog并在已删除分支的尖端找到提交的SHA1,然后只需git checkout [sha]。一旦你在那次提交,你可以只是git checkout -b [branchname]从那里重建分支。

有用的链接:

© www.soinside.com 2019 - 2024. All rights reserved.