このスクリプトは、指定された Git リポジトリ内のステージングされた変更内容を取得し、それをもとに OpenAI の API を使用して自動的に適切なコミットメッセージを生成し、コミットを行います。Git 管理下での開発作業を効率化することを目的としています。
- Python 3.8 以上
- Git がインストールされていること
- OpenAI API キーが利用可能であること
以下のパッケージをインストールしてください:
openai
logging
pip install openai
-
環境変数の設定
OpenAI API キーを環境変数
OPENAI_API_KEY
として設定してください。export OPENAI_API_KEY=your_openai_api_key
-
スクリプトの配置
このスクリプトを任意の場所に保存します。
-
依存パッケージのインストール
必要な Python パッケージをインストールしてください。
pip install openai
-
フォルダ内での Git 管理確認
このスクリプトは Git 管理されているフォルダでのみ動作します。
-
スクリプトの実行
コミットを作成するディレクトリに移動し、コマンドラインから以下の形式でスクリプトを実行します:
python script_name.py ./
-
実行結果
- スクリプトは、指定されたフォルダ内のステージングされた変更内容を取得します。
- OpenAI の API を利用して適切な英語のコミットメッセージを生成します。
- 生成されたコミットメッセージを使って Git のコミットを自動的に作成します。
-
フォルダパスの取得 実行時引数から対象フォルダを取得し、そのフォルダが Git 管理下にあるか確認します。
-
変更内容の取得
git add -u
で登録済みファイルの変更をステージングし、git diff --cached
で変更内容を取得します。 -
コミットメッセージの生成 変更内容をプロンプトとして OpenAI API に渡し、適切な英語のコミットメッセージを生成します。
-
Git コミット 生成されたコミットメッセージを用いて Git のコミットを作成します。
- 環境変数
OPENAI_API_KEY
が未設定の場合、スクリプトはエラーをスローして終了します。 - 指定されたフォルダが Git 管理下にない場合、エラーメッセージを出力して終了します。
- OpenAI API 呼び出しや Git コマンド実行中にエラーが発生した場合、詳細なエラーメッセージを出力します。
- スクリプトの実行には、インターネット接続が必要です。
- OpenAI API キーが正しく設定されていない場合、正常に動作しません。
- コミットメッセージは OpenAI モデルの応答に依存するため、必要に応じて内容を確認してください。
このスクリプトは自由に利用可能ですが、OpenAI API の利用規約を遵守してください。