2017-06-16 8 views
2

私たちはプロジェクト管理インタフェースとしてTFSを使用しており、Gitを使ってリポジトリを管理しています。TFSとGit - ユーザをプッシュコードに限定する

ファイルをプッシュしてリポジトリ内のブランチにプッシュすることをユーザーに制限する必要があります。

例えば:、user1がFILE1への変更を分岐Aでは 作ることができない、User2がFILE2に変更を加えることができない、USER3は、ブランチ内のすべてのファイルを変更することができますなど

それはTFSで可能ですか?

+0

上記の制限を厳密に設定することはできません。既存の設定に基づいてのみアクセス許可を設定することができます。同様のスレッドhttps://stackoverflow.com/questions/27989974/how-can-i-allowを参照してください。 -only-certain-people-to-commit-in-visual-studio-online –

答えて

0

TFSでも可能ですか?

わかりません。

ゲートキーパとして機能する中間リポジトリをセットアップすることができます。プッシュが成功すると、そのレポ(through a post-receive hook)は実際のターゲット:TFS Gitリポジトリにプッシュします。私はあなたがおそらくこれをやって見ることができる唯一の方法がある見る「restricting pushes by dir/file name

0

:gitoliteは、分岐、あるいはファイルへのプッシュを制限することができます:中間レポはgitoliteのような承認層によって管理されるべきであると

TFS server-side pluginを介して。 Git PushNotificationイベントにサブスクライブするISubscriberを実装できます。これにより、プッシュされたコミットを検査し、ポリシーが満たされない場合にプッシュをブロックすることができます。しかし、TFS以外のいくつかの構造化された形式でブランチ/ユーザーの制限を定義する必要があります。私はTFS-ホストされたGitのレポにプッシュ上でポリシーを実装するための素敵なフレームワークを提供して正常にこのプロジェクトを、使用している

は:

https://github.com/giuliov/GitPushFilterPlugin

(私自身の経験から)唯一の注意点ということですPushNotificationイベントで利用可能なデータの量は、IncludedCommitsが関係する支店を決定するのに十分ではない可能性があります。

関連する問題