Gptcommit は、自然言語生成モデル GPT を基にした Git のコミットメッセージ生成ツールです。開発者がより自然な方法で Git のコミットメッセージを書くのを支援し、コードの可読性と保守性を向上させることができます。この記事では、Gptcommit のインストールと使用方法について説明します。
公式デモ#
インストール#
Gptcommit のインストールは非常に簡単です。以下の手順に従って操作してください。
- ローカルインストール
Gptcommit は Rust アプリケーションですので、まず Rust ツールチェーンをインストールする必要があります。Rust 公式ウェブサイトから Rust をダウンロードしてインストールしてください。Rust ツールチェーンのインストールが完了したら、Cargo コマンドを使用して Gptcommit をインストールできます。ターミナルまたはコマンドラインウィンドウで以下のコマンドを入力してください。
cargo install --locked gptcommit
このコマンドは Gptcommit のソースコードをダウンロードし、実行可能ファイルをビルドします。ビルドが完了すると、Gptcommit はシステムのデフォルトパスにインストールされます。
macOS でのインストール
brew install zurawiki/brews/gptcommit
- Git リポジトリ内で、以下のコマンドを実行して gptcommit を
git prepare-commit-msg
フックとしてインストールします。インストールするには OpenAI API キーが必要です。
gptcommit install
インストールに関する問題が発生した場合は、Gptcommit 公式ドキュメントを参照して追加情報を取得してください。
使用方法#
gptcommit を使用するには、通常どおりgit commit
を実行するだけです。このフックは、GPT などの大規模な言語モデルを使用して自動的にコミットメッセージを生成します。生成されたメッセージに満足しない場合は、いつでもコミットする前に編集することができます。
注意:デフォルトでは、gptcommit は GPT-3 モデルを使用します。使用するためには、OpenAI アカウントに十分なクレジットがあることを確認してください。
OpenAI API キーと URL の設定#
- グローバル設定
#api
gptcommit config set openai.api_key sk-...
#url
gptcommit config set openai.api_base https://...
- リポジトリのローカル設定
#api
gptcommit config set --local openai.api_key sk-...
#url
gptcommit config set --local openai.api_base https://...
コミット言語の設定#
デフォルトの言語は英語(en)ですが、言語を設定することもできます。
gptcommit config set output.lang zh-cn
サポートされている言語:
コード | 言語 |
---|---|
en | 英語 |
zh-cn | 簡体中国語 |
zh-tw | 繁体中国語 |
ja | 日本語 |
Gptcommit には他にも多くの機能やオプションがあります。これらについては、次のコマンドを入力して確認できます。
gptcommit --help
このコマンドは、Gptcommit のヘルプ情報を表示し、コンテンツの使用方法、生成メッセージの長さの制御、デフォルトの設定の設定などの詳細な情報を提供します。
利点#
Gptcommit を使用する主な利点の 1 つは、コミットメッセージを手動で入力する必要がある時間と労力を削減できることです。手動でコミットメッセージを書くよりも、Gptcommit を使用するとコミットメッセージの作成時間を大幅に短縮でき、すべてのコミットメッセージが文法に準拠していることが保証されます。また、Gptcommit は読みやすく理解しやすいコミットメッセージを生成するため、コードの可読性と保守性も向上させることができます。
さらに、Gptcommit は強力な自然言語生成モデル GPT に基づいているため、高品質な自然言語テキストを生成することができます。コミットメッセージの作成や他のテキストコンテンツの作成時にも、Gptcommit は有用なサポートを提供します。
派生プロジェクト#
vscode-gptcommitは、GPT モデルを使用して VS Code の gptcommit を介して自動化された git コミット commit プラグインを実現しています。