Plural は git-crypt を再実装し、git 内の秘密データを管理しています。そのため、何もしなければ他のユーザはレポジトリの中身を見ることができません。そこで Plural ではageを使って他ユーザーとレポジトリを共有するコマンドを提供しています。
レポジトリをシェア
暗号化されたレポジトリをシェアするためには以下の 2 つのステップが必要です。
- age 公開鍵を登録する
- 登録した鍵を使って特定のメールアドレスにレポジトリを共有する
公開鍵を登録
公開鍵を登録するために以下のコマンドを実行します。
これで新しい age キーペアが生成され、公開鍵が自動的に Plural API に登録されます。キーペアは ~/.plural/identity
に格納されます。
特定のメールアドレスにシェア設定
レポジトリをシェアするには以下のコマンドを実行します。(<email>
は Plural アカウントに紐づいている E メールです。)
上記のコマンドは以下の処理を行なっています。
- レポの現在の Aes キーを暗号化する base age identity を作成し、
${REPO_ROOT}/.plural-crypt
の下の gitignored に格納
- アクセスできるすべてのユーザーを
${REPO_ROOT}/.plural-crypt
の下の yaml ファイルに登録
- ファイルを暗号化し、
${REPO_ROOT}/.plural-crypt
の下に格納
そして以下を実行します。
レポジトリをクローン
git clone
でレポジトリをクローンし、以下のコマンドを実行することでコードの暗号化を解除することができます。
参考

備考
Hakky ではエンジニアを募集中です!まずは話してみたいなどでも構いませんので、ぜひお気軽に採用ページからお問い合わせくださいませ。
