Helix Core P4コマンドリファレンス (2019.1)

p4 grant-permission (グラフ)

graphタイプの指定されたディポ(またはそのディポのリポジトリ)のための指定された権限を指定されたユーザまたはグループに割り当てます。

注意

graphタイプのディポのみになります。

構文

p4 [g-opts] grant-permission -d graphDepot1 -g group [-r ref] -p permission
p4 [g-opts] grant-permission -d graphDepot1 -u user [-r ref] -p permission
p4 [g-opts] grant-permission -n //graphDepot1/reponame -g group [-r ref] -p permission
p4 [g-opts] grant-permission -n //graphDepot1/reponame -u user [-r ref] -p permission
p4 [g-opts] grant-permission -n //graphDepot1/reponame -g group -r ref -p restricted-ref
p4 [g-opts] grant-permission -n //graphDepot1/reponame -u user -r ref -p restricted-ref

説明

注意

管理者は、所有者、またはその特定のグラフのディポやリポジトリへのadminアクセス権限が付与されているユーザです。

ディポを作成するユーザはそのディポのownerで、常にディポに対する完全なadmin権限を持っています。 adminユーザは、admin権限を含む権限を、ディポまたはそれに含まれるリポジトリのグループおよびユーザに付与することができます。

このコマンドは指定されたユーザまたはグループの存在を確認しません。 また、このコマンドは指定されたブランチまたはタグへのリファレンスの存在を確認しません。 そのため、これらのオプションはユーザ、グループ、またはブランチまたはタグへのリファレンスの作成の前または後に使用することができます。

権限は付加的です。 例えば、ユーザにcreate-repo権限を与え、後でそのユーザにdelete-repo権限も与えることができます。 権限を与えた後で、その権限をp4 revoke-permissionで削除することができます。

注意

特定の権限は、複数の権限を意味します。 そのような権限は自動的に含まれ、それらを含む権限が取り消されない限り、取り消すことができません。 詳細については、「権限」を参照してください。

オプション

-d

ディポおよびそのリポジトリに適用します。

注意

Helixサーバスーパーユーザは-d *を指定すると、すべてのグラフディポ内すべてのリポジトリに対する権限を付与できます。

-n

指定した名前のリポジトリに適用します。

-g

指定したグループに適用します。

-u

指定したユーザに適用します。

-r

(任意指定)create-refdelete-refwrite-ref権限にrefを指定します。これはリポジトリのブランチ(refs/heads/releaseなど)や、リリース番号を表すタグ(refs/heads/rel-2.1.14など)に対応するリファレンスです。 詳細については、https://git-scm.com/book/en/v2/Git-Internals-Git-Referencesを参照してください。

restricted-ref権限に必要になります。

-p

指定した権限を適用します。

g-opts

詳細については、「グローバルオプション」を参照してください。

権限

ユーザまたはグループに権限を与えるとき、そのユーザまたはグループは次のものを受け取ります。

  • 指定した権限
  • 明示的な権限に含まれる暗黙的(暗示的に含まれた)権限

割り当て済みの各権限に関連付けられた暗黙的な権限:

割り当てられた権限

暗黙的な権限
  admin force-push delete-ref create-ref delete-repo create-repo write-all write-ref read
admin                  
force-push                  
delete-ref                  
create-ref                  
delete-repo                  
create-repo                  
write-all                  
write-ref                  
read                  

各権限に関連付けられた機能:

admin

指定したリポジトリまたはディポの権限を付与または取消します。

force-push

ブランチに強制的に上書きします。

delete-ref

-rrefで指定されたリポジトリのブランチまたはタグを削除します。

create-ref

指定されたリポジトリのブランチまたはタグに、-rrefの初期値を作成し設定します。

delete-repo

graphタイプの指定されたディポ内のリポジトリを削除します。

create-repo

ユーザはgit pushコマンドを使用してグラフディポに新しいリポジトリを作成することができます。 詳細については、リポジトリの作成および表示方法を説明している「Helix4Git管理者ガイド」を参照してください。

write-all

-rrefで指定されたブランチまたはタグのファイルおよびリファレンスを読み取り、更新します。 この権限により、ユーザはグラフディポ内に既に存在するリポジトリのクローン、プル、プッシュが可能になります。 ただし、create-repo権限は含まれません。

write-ref

-rrefで指定されたリポジトリのブランチまたはタグを読み取り、更新します。 これは、プロテクションテーブル内のプロテクション設定をファイルまたはディレクトリに適用する唯一の権限です。 詳細については、p4 protectおよびHelix Coreサーバ管理者ガイド: 基本の「アクセスの認証」を参照してください。

read

指定されたディポまたはリポジトリ内のファイルを読み取ります。 ユーザにリポジトリからクローンまたはプルすることを許可します。

次の権限は排他的であり、暗黙的な権限はありません。

restricted-ref

指定されたユーザまたはグループは、-rオプションによって指定されたリファレンス(ブランチまたはタグ)を更新することができます。 設定した場合、この権限を持つユーザのみが更新を実行できます。 これにより、write-refまたはwrite-all権限を持つ他のユーザが、指定されたリファレンスを更新することを防止できます。 (最後の例を参照してください。)

タイプgraphの指定されたディポ(およびそのディポのリポジトリ)のread権限を指定されたユーザに割り当てます。

p4 grant-permission -p read -d graphDepot1 -u bruno

割り当てを特定のグラフディポ内の特定のリポジトリに制限します。

p4 grant-permission -n //graphDepot1/repo8 -u bruno -p read

リファレンス関連の割り当て(write-refwrite-allcreate-refdelete-refforce-push)を特定のブランチまたはタグに制限します。

p4 grant-permission -n //graphDepot1/repo8 -r "refs/heads/rel-2.1.14" -u bruno -p create-ref

リファレンス関連の割り当てを2つ以上のブランチまたはタグに適用するには、アスタリスク(*)のワイルドカードを使用します。

p4 grant-permission -n //graphDepot1/repo8 -r "refs/heads/rel-*" -u bruno -p delete-ref

指定したユーザまたはグループのブランチの使用を特定のブランチを制限します(マスターブランチの使用を開発チームに制限するなど)。

p4 grant-permission -n //repo/test -g devops -p restricted-ref -r refs/heads/master

関連コマンド

現在与えられている権限を一覧表示する

p4 show-permission

権限を取り消す

p4 revoke-permission