> ## Documentation Index
> Fetch the complete documentation index at: https://docs.corgea.app/llms.txt
> Use this file to discover all available pages before exploring further.

# GitHub

> リポジトリの修正を生成

## セットアップ

現在、Corgeaは[Corgea GitHub App](https://github.com/apps/corgea)を通じてGitHubリポジトリをサポートしています。
このページでは、Corgeaが脆弱性をスキャンし、修正用のプルリクエストを作成できるようにGitHub Appを設定する方法を説明します。

GitHub Appは、[Integrations](https://www.corgea.app/integrations/)ページまたは問題ページから、次の手順でインストールできます。

<Steps>
  <Step title="Corgea GitHub Appをインストール">
    Integrationsページで、GitHubロゴの横にある「Install」ボタンをクリックします。

    <Frame>
      <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/github_integrations.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=9c59f1ff613934b1cb2a42567d0afc32" style={{ borderRadius: '0.5rem' }} width="1330" height="790" data-path="images/github_integrations.png" />
    </Frame>
  </Step>

  <Step title="GitHubでセットアップを続ける">
    インストール先の組織を1つだけ選択し、先ほど入力した組織と一致していることを確認します。
    GitHubで権限を承認し、アクセスを許可するリポジトリを選択します。
    Corgeaがアクセスできるリポジトリにのみ、Corgeaからプルリクエストを作成できます。
  </Step>
</Steps>

## GitHubでCorgeaを使う

これでCorgeaとGitHubの接続は完了です。GitHub Appはすべてのプルリクエストをスキャンして修正案を提示します。また、Corgeaから脆弱性を修正するプルリクエストを作成できます。

## プルリクエストのスキャン

Corgeaは各プルリクエストをスキャンし、実行可能な修正案を提案します。
プルリクエストへのコメントは、差分に含まれる行にのみ追加されます。問題が複数行にまたがる場合、影響を受けるコード範囲内で最初に変更された行にコメントが付けられます。

<Frame>
  <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/github-scan.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=d52844f9e6894e695ae76aa0c02d7666" style={{ borderRadius: '0.5rem' }} width="1888" height="1724" data-path="images/github-scan.png" />
</Frame>

## Corgeaからプルリクエストを作成

Corgeaの各問題ページから、その問題を修正するプルリクエストを作成できます。

<Frame>
  <img src="https://mintcdn.com/corgea/iadAV76rx_-M1qX0/images/pull_request.png?fit=max&auto=format&n=iadAV76rx_-M1qX0&q=85&s=c8286da5954cff2b319a709b40c635ca" style={{ borderRadius: '0.5rem' }} width="492" height="436" data-path="images/pull_request.png" />
</Frame>

「Create Pull Request」ボタン（ブランチアイコン）をクリックします。作成されたプルリクエストが新しいタブで開きます。
ポップアップブロッカーを無効にする必要があるかもしれません。

<Frame>
  <img src="https://mintcdn.com/corgea/uxLuQR4653lM43Tj/images/github-pr-fix.png?fit=max&auto=format&n=uxLuQR4653lM43Tj&q=85&s=a3da809f8f9fe8de0aa58f2036817084" style={{ borderRadius: '0.5rem' }} width="1930" height="2040" data-path="images/github-pr-fix.png" />
</Frame>

## GitHubの権限

Corgea GitHubアプリをインストールすると、以下の権限を付与するよう求められます。

<Frame>
  <img src="https://mintcdn.com/corgea/o9jrguQxFuAwjqPy/images/github_permission_check.png?fit=max&auto=format&n=o9jrguQxFuAwjqPy&q=85&s=418de761ef9a68f89fb26ef4f20a7835" style={{ borderRadius: '0.5rem' }} width="1332" height="1840" data-path="images/github_permission_check.png" />
</Frame>

### メタデータとリポジトリフックの読み取り権限

* **メタデータ**:基本的なリポジトリ情報にアクセスし、リポジトリを特定・追跡
* **リポジトリフック**:プルリクエストとプッシュイベントを受け取り、自動的にセキュリティスキャンをトリガーします

### チェック、コード、問題、プルリクエストの読み取り・書き込み権限

* **チェック**:プルリクエストに対してチェックランを作成・更新し、セキュリティの検出結果を報告し、マージブロックポリシーを強制します
* **コード**:セキュリティ解析のためにリポジトリのソースコードを読み取り、修正プルリクエストを作成する際にコミットを書き込みます
* **問題**:セキュリティの検出結果にコンテキストを提供するため、問題のメタデータを読み取ります
* **プルリクエスト**:プルリクエストのメタデータを読み込み、Corgeaが生成したセキュリティ修正を含むプルリクエストを作成または更新します

### ユーザー権限

### メールアドレスの読み取り権限

認証と通知のために、GitHubアカウントとCorgeaアカウントを関連付ける目的で使用します。

## トラブルシューティング

<AccordionGroup>
  <Accordion title="GitHub Appをインストールできない">
    GitHub Appを自分でインストールするための権限がない場合があります。
    その場合、GitHub組織の管理者または所有者に通知でリクエストが届き、承認されるまでは
    インストールが保留中と表示されます。組織の所有者または管理者がリクエストを承認すると、
    CorgeaはWebhookを受信してアカウントを更新します。
  </Accordion>

  <Accordion title="プルリクエストを再作成する">
    マージ先のベースブランチを誤って選択した可能性があります。変更するには、
    既存のプルリクエストを閉じ、GitHubで作成したブランチを削除してください。現在、
    問題と修正をリセットするにはCorgeaサポートへの連絡が必要です。将来的には、
    Corgeaの画面から削除とリセットを行えるようになる予定です。
  </Accordion>

  <Accordion title="Corgeaでのプルリクエストの状況を追跡">
    これは開発のロードマップに含まれています。
  </Accordion>
</AccordionGroup>
