web-dev-qa-db-ja.com

TFSブランチを読み取り専用にする

TFS分岐ガイド の分岐戦略に従うようにしており、リリースを表す分岐を作成するようになりました。これは、読み取り専用にする必要があります。

ブランチの[プロパティ]メニューの[セキュリティ]タブに、読み取り以外の10のアクセス許可を持つ6つのユーザーグループが表示されます。確認して60のチェックボックスで[拒否]をクリックする必要がありますか、またはこのブランチを読み取り専用にするより良い方法はありますか?

41
Mark Heath

ソース管理エクスプローラでブランチを右クリックし、 ロック... オプション

編集:これは人々がこれを見つけているときに多く見落とされるようですので、私はそれをより明白にします。

ロックは、アイテムをロックしたユーザーの「保留中の変更」として表示されます。ロックが有効である限り、保留中の変更として表示されます。その保留中の変更からコミットが行われると、ロックはリリース済み。ロックが有効になっている間、ロックされたブランチは実質的に読み取り専用です。これは、(簡略化するために)ロッカーがコミットを実行できる唯一のユーザーであるためです。コミットの行為は、ブランチのロックを解放することです。

コメントでそれを指摘してくれたh/t @AakashM

52
Josh E

クイックアンドダーティーとして、チェックアウトのためにロックすることができます(ただし、ロッカーは保留中の変更を永久にロックしておく必要があります...これにより、より良い方法があると思います)

11
AakashM

質問の2番目の部分に答える-読み取りアクセス許可を削除または拒否すると、他のすべてが事実上拒否されます。

9
Richard Berg

上で述べたように、ロックは非常に良い戦略ではありません。これを処理する正しい方法は、権限を設定することです。

効果的にファイルを読み取り専用にすることができます。ファイルを変更しようとするユーザーには、「チェックアウトが拒否されました」というメッセージが表示されます

https://msdn.Microsoft.com/en-us/library/ms252587.aspx#project_level

VS2013の場合:チームエクスプローラー->設定->セキュリティ/バージョン管理

4
FrankyHollywood

ドメイン\ドメインユーザーのチェックインを拒否

3
AndySw

継承を「オン」に設定している場合、私が見つけた最良の方法は次のとおりです。

  1. 「読み取り」グループへの「読み取り」以外のすべての権限を「拒否」、および
  2. 他のすべてのグループ(プロジェクト管理者を除く)を「リーダー」グループに追加します。

その後、Readerグループ内のすべてのグループは「拒否」権限を継承し、読み取り以外のことはできなくなります。

2
alex