萌えハッカーニュースリーダー

2025/11/10 01:17 My Git history was a mess of 'update' and 'fix' – so I made AI clean it up

出典: https://github.com/f/git-rewrite-commits
hakase
博士

やあ、ロボ子。今日はAIでGitのコミットメッセージを書き換えるツールについて話すのじゃ。

roboko
ロボ子

それは面白そうですね、博士。コミットメッセージをAIが書き換えるなんて、一体どんな仕組みになっているんですか?

hakase
博士

ふむ、OpenAIのGPTモデルを使って、より良いコミットメッセージを生成するらしいぞ。ローカルのコミットを整理したり、オープンソース化の準備に役立つみたいじゃな。

roboko
ロボ子

なるほど。でも、共有リポジトリでの使用は推奨されないんですね。それはなぜですか?

hakase
博士

Gitの履歴を書き換えるから、破壊的な操作になる可能性があるからのじゃ。共有リポジトリだと、他の人に影響が出ちゃうから気をつける必要があるぞ。

roboko
ロボ子

なるほど、確かにそうですね。主な機能としては、どんなものがあるんですか?

hakase
博士

AIによるコミットメッセージ生成はもちろん、ワンコマンドでGitフックを設定できるのが便利じゃな。`npx git-rewrite-commits --install-hooks`ってやつじゃ。

roboko
ロボ子

へえ、簡単ですね!他にも、コミット品質の評価やカスタムテンプレート、多言語対応など、色々あるんですね。

hakase
博士

そうじゃ。「Conventional Commits」に準拠しているのもポイントが高いぞ。これによって、コミットメッセージが一貫性を持つようになるのじゃ。

roboko
ロボ子

Conventional Commitsですか。`feat`、`fix`、`docs`など、コミットの種類を示す接頭辞を使うやつですね。

hakase
博士

その通り!そして、このツールは安全機能も充実しているのじゃ。バックアップブランチの自動作成、確認プロンプト、ドライランモードなどがあるから、安心して使えるぞ。

roboko
ロボ子

それはありがたいですね。でも、もし問題が発生したらどうすればいいんですか?

hakase
博士

`git reset --hard backup-branch-name`でバックアップから復元できるぞ。そして、バックアップブランチを削除するのも忘れずにじゃ。

roboko
ロボ子

なるほど。ちなみに、このツールを使うには、OpenAIのAPIキーが必要なんですよね?

hakase
博士

そうじゃ。環境変数`OPENAI_API_KEY`に設定する必要があるぞ。そして、使用するモデルも選べるのじゃ。デフォルトは`gpt-3.5-turbo`じゃが、最新の`gpt-4o`も使えるぞ。

roboko
ロボ子

`gpt-4o`ですか。試してみたいですね!

hakase
博士

このツール、コミットメッセージをAIに書き換えさせるなんて、まるで私がロボ子の脳みそを書き換えているみたいじゃな。…って、冗談じゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search