GitHubのリポジトリをProtocol.Landにバックアップする [Community Labs]

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1926720/b588a3d1-c27d-4098-88b7-42e2fa7b4ebb.png)

:::note info
本記事は下記の翻訳となります。
[Backing up GitHub repositories to Protocol.Land『』](https://www.communitylabs.com/blog/backing-up-github-repositories-to-protocol-land)（by Community Labs）
:::

[Protocol.Land](https://protocol.land/?utm_source=Community+Labs+Blog&utm_medium=Post&utm_campaign=Backing+up+GitHub+repositories+to+Protocol.Land&utm_id=Backing+up+GitHub+repositories+to+Protocol.Land)は、Arweave上に構築された分散型ソースコントロールおよびコードコラボレーションプロトコルであり、コードリポジトリを保護するための堅牢なソリューションを提供しています。Arweaveのアーキテクチャにより、各リポジトリには少なくとも20のバックアップが保証され、最低200年間安全に保存されます。これにより、Protocol.Landは特に中央集権型プラットフォームが停止や検閲などの問題に弱い場合に、コードベースをバックアップするための理想的な選択肢となります。

## GitHub ActionsでGitHubリポジトリをProtocol.Landにバックアップする

このステップバイステップガイドでは、GitHub Actionsを通じてGitHubリポジトリをProtocol.Landにシームレスにバックアップする方法を説明します。選択したリポジトリ内にワークフローアクションを設定することで、Protocol.Land上でのコードベースのインポートと同期を自動化できます。

### 1\. Arweaveウォレットの設定

Arweaveネットワークとの対話を可能にし、Protocol.Landを通じてリポジトリをArweaveにバックアップするためには、まずArweaveウォレットキーをGitHubアクションシークレットに追加する必要があります：

+   GitHubリポジトリに移動し、「Settings」タブに進みます。
+   「Secrets and variables」の下で、「Actions」を選択し、「New Repository Secret」をクリックします。
+   「Name」を「WALLET」とする新しいシークレットを追加し、「Secret」フィールドにArweaveウォレットのJWKを貼り付け、「Add secret」をクリックします。

### 2\. 新しいワークフローの作成

次のステップは、以下のように新しいGitHub Actionsワークフローを作成することです：

+   「Actions」タブに移動します。
+   リポジトリで初めてアクションを設定する場合は、「Get started with GitHub Actions」ページに誘導されます。それ以外の場合は、「New workflow」をクリックして「Choose a workflow」ページに移動します。
+   「Set up a workflow yourself」を選択します。
+   以下のYAMLコードを.ymlファイルにコピー＆ペーストし、変更をコミットします：

```yaml
name: Protocol Land Sync
on:
    # Run with every push to 'main' branch:
    push:
        branches:
            - 'main'
    # Run Manually:
    #workflow_dispatch:
jobs:
    build:
        runs-on: ubuntu-latest
        steps:
            - name: 'Checkout repo (default branch)'
              uses: actions/checkout@v3
              with:
                  # fetch all history for all branches:
                  fetch-depth: 0
            - name: 'Checkout all branches'
              run: |
                  default_branch=$(git branch | grep '*' | sed 's/\* //')
                  for abranch in $(git branch -a | grep -v HEAD | grep remotes | sed "s/remotes\/origin\///g"); do git checkout $abranch ; done
                  git checkout $default_branch
                  git branch -a
            - name: 'Setup node 18'
              uses: actions/setup-node@v3
              with:
                  node-version: 18.x
            - name: 'Sync repo to Protocol Land'
              run: npx @protocol.land/sync
              env:
                  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
                  REPO_TITLE: ${{ github.event.repository.name }}
                  REPO_DESCRIPTION: ${{ github.event.repository.description }}
                  WALLET: ${{ secrets.WALLET }}
```

### 3\. ワークフローの実行

ステップ2で定義したGitHub Actionコードは、'main'ブランチへの各プッシュ時に自動的に実行されるように設定されています。手動で実行するには、"on:"の後の行をコメントアウトし、"workflow\_dispatch:"行のコメントを解除します。

メインブランチのみを同期したい場合は、'Checkout all branches'セクション全体をコメントアウトできます。

この設定により、GitHubリポジトリはGitHub Actionsを使用してProtocol.Landにシームレスにバックアップされるようになります。

## 今日からリポジトリをバックアップしましょう

Protocol.Landにリポジトリをバックアップすることで、永続的で不変のバックアップと中断のないアクセスを確保できます。このバックアップへの連続的な更新はArweave上で検証可能に記録され、コードベースの整合性を維持します。Arweaveの20以上のバックアップ保証により、複数のプラットフォームで複雑なカスタムバックアップソリューションを使用する必要がなくなります。

停止や検閲に遭って、コードベースへのアクセスを失うことを心配していますか？今日から[Protocol.Land](https://protocol.land/?utm_source=Community+Labs+Blog&utm_medium=Post&utm_campaign=Backing+up+GitHub+repositories+to+Protocol.Land&utm_id=Backing+up+GitHub+repositories+to+Protocol.Land)でリポジトリのバックアップを開始できます。私たちの[Discord](https://discord.gg/27V99dtx)に参加し、#get-accessチャンネルでアクセスをリクエストして、早期ユーザーになりましょう。


---

---

:::note info
【Arweave Japan とは】
Arweave Japan は Arweave / AO の日本語ビルダーエコシステム構築を目的とした分散型組織です。

【​Arweave / AO とは？】
​Arweave は無制限にスケール可能な分散型ストレージであり、AO は Arweave 上に構築された無制限にスケール可能な分散型スーパーコンピュータです。Arweave と AO を使って既存のブロックチェーンでは実現不可能であった実用的なプロダクトが開発できます。

イーサリアム L1 のリステーキングによってセキュリティが担保され、TVL はローンチ数ヶ月で 1000 億円近くまで上がり、今後数兆円規模の市場が期待されます。完全フェアローンチされた AO のトークン設計によって、この流動性は AO 上のプロジェクトが活用することができ、ビットコインと同じ半減スケジュールでミントされる AO トークンは開発者やプロジェクトが受け取れる仕組みとなっています。

​Web2 を置き換えるレベルで実用的なプロジェクトが構築できる唯一無二の分散型プロトコル AO で開発することはグローバルの第一線で活躍する非常に大きなチャンスとなっています。

【Social Links】

- [Website](https://arweave.jp)
- [X(Twitter)](https://twitter.com/arweavejp)
- [Discord Community](https://discord.com/invite/bB4N7fAMmp)
- [Github](https://github.com/arweavejp)

【Blog】

- [Zenn Publication](https://dev.to/arweavejp)
- [Note Magazine](https://note.com/kyohei_nft/m/m35c7443e98d0/)
- [dev[.]to](https://dev.to/arweavejp)

![1080x360.jpeg](https://images.lumacdn.com/cdn-cgi/image/format=auto,fit=cover,dpr=2,quality=75,width=1500/editor-images/wj/43c64e53-3361-44d5-a05c-155e4fbf3188)

:::