私は、クライアントが書き込み制御を持つすべてのブランチ(または少なくともリポジトリ)をロックできることを願っています。gitolite writable off
それがすることのようです。しかし、権限を取得できません。
$ ssh [email protected] writable testing off
FATAL: you are not authorized
一般ユーザーは、このタスクを実行する権限をどのように取得しますか?クライアントにはすでに公開鍵があり、gitolite-admin/keydir
RW +権限がありますtesting
。
答え1
したがって、同僚が楽しんでいるように、ソースコードは最高のドキュメントです。
gitolite/src/commands/writable:
_die "you are not authorized" if $ENV{GL_USER} and not( owns($repo) or is_admin() or ( can_write($repo) and $op eq 'status' ) );
したがって、ストレージへの書き込みをロックするには、管理者またはストレージを所有する必要があります。買い戻しとはどういう意味ですか?
src/lib/Gitolite/Easy.pm:
return ( creator($r) eq $user or $rc{OWNER_ROLENAME} and in_role( $rc{OWNER_ROLENAME}, $r ) );
したがって、リポジトリを作成したか(実行不可能)、所有者gitolite-admin/conf/gitolite.conf
としてリストする必要があります。
- どのように登録しますか?みんなユーザーを所有者として使用しますか?
- これにより、いくつかのセキュリティホールが発生する可能性がありますか?
これが私の現在の状況です。$ find gitolite | xargs grep OWNER_ROLENAME
返された文字列は他のファイルで言及されておらず、真珠とは言わないでしょう:(
また、/home/git/.gitolite.rc
2つの役割のみが一覧表示されREADERS
ますWRITERS
。