誰もが「gitoliteに書き込み可能」にするにはどうすればよいですか?

誰もが「gitoliteに書き込み可能」にするにはどうすればよいですか?

私は、クライアントが書き込み制御を持つすべてのブランチ(または少なくともリポジトリ)をロックできることを願っています。gitolite writable offそれがすることのようです。しかし、権限を取得できません。

$ ssh [email protected] writable testing off
FATAL: you are not authorized

一般ユーザーは、このタスクを実行する権限をどのように取得しますか?クライアントにはすでに公開鍵があり、gitolite-admin/keydirRW +権限があります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.rc2つの役割のみが一覧表示されREADERSますWRITERS

関連情報