G-gen の三浦です。当記事では、特定の GitHub リポジトリの内容を Gemini アプリに解説させる方法を紹介します。

概要
当機能について
Gemini アプリでは、GitHub のパブリックリポジトリまたはプライベートリポジトリをインポートして、その内容に関する質問や依頼ができます。
この機能は、ソースコードの理解の支援や改善案の提案、コード生成、エラー解析といった用途に利用できます。
詳細は以下の公式ドキュメントをご参照ください。
Gemini アプリとは
Gemini アプリは、Google が提供する生成 AI チャットアプリケーションです。プログラミング、ドキュメント作成、質問応答など多用途に対応しています。
Google アカウントを持っていれば、ウェブブラウザで gemini.google.com にアクセスしたり、モバイルデバイス向けアプリをダウンロードすることで利用できます。
詳細は以下の公式ドキュメントや記事をご参照ください。
前提条件
当機能は、以下の特定の Google Workspace エディションまたはアドオンでのみ利用できます。
- Business Standard / Plus
- Enterprise Standard / Plus
- Gemini Education
- Education Premium
詳細は以下をご参照ください。
検証手順
検証手順は次のとおりです。
| 項番 | 内容 | 説明 |
|---|---|---|
| 1 | パブリックリポジトリをインポートし、コード理解と改善を試行 | GitHub リポジトリをインポートし、コードベースの理解や改善提案を Gemini に依頼します。 |
| 2 | プライベートリポジトリのフォルダをインポートし、デバッグやコード生成を試行 | フォルダをアップロードし、生成・デバッグ用途での使い方を確認します。 |
検証
リポジトリとディレクトリ構成
本検証に使用したリポジトリの構成は以下のとおりです。
# パブリックリポジトリ . ├── README.md └── main.py # プライベートリポジトリ . ├── README.md └── error └── error.py
main.py
シンプルな Flask アプリを使用しています。ブラウザに "Hello, World!" を返すだけの最小構成です。
from flask import Flask app = Flask(__name__) @app.route("/") def hello(): return "Hello, World!" if __name__ == "__main__": app.run()
error/error.py
意図的に ZeroDivisionError を引き起こすテストコードです。Gemini アプリでのデバッグ用に使用します。
from flask import Flask app = Flask(__name__) @app.route("/") def home(): return 1 / 0 if __name__ == "__main__": app.run(debug=True)
パブリックリポジトリのインポート
Gemini アプリ(https://gemini.google.com)へアクセスします。
[+(ファイルの追加)] > [コードをインポート] を選択します。

GitHub リポジトリの URL を入力し、「インポート」を選択します。

内容を確認し、「接続」を選択します。

接続が完了すると、接続した GitHub のリポジトリ情報が表示されます。

コード理解と改善の確認
まずは以下のプロンプトで、リポジトリのコード全体について説明を求めてみます。
このリポジトリのコードについて教えてください

次に以下のプロンプトで、アプリのセキュリティ改善の提案を依頼してみます。
この Web アプリに対して、セキュリティ上のリスクがあれば指摘し、改善案を提示してください

プライベートリポジトリのフォルダインポート
Gemini アプリの新しいチャットから、再度 [+(ファイルの追加)] > [コードをインポート] を選択します。
[フォルダをアップロード] から、error フォルダを選択します。

注意内容を確認し、[アップロード] を選択します。

アップロードしたフォルダが表示されていることを確認します。

デバッグとコード生成の確認
以下のプロンプトで、エラーが出る原因と改善方法を確認します。
このアプリの実行時にエラーが出る理由を教えてください。また、修正方法も教えてください。

次に以下のプロンプトで、認証機能を追加するコードを生成できるか確認します。
このアプリに対して、ユーザー名とパスワードでログインできる認証機能を追加したいです。必要なコードを生成して教えてください。

