AiSOUKO

Gemini Code Assistで「Accept all changes」が表示されない問題の原因と解決策

VSCodeからGemini Code Assistを利用していると「Accept all changes」が表示されずに、変更の提案をコードに適用できない時があります。
この問題が発生する原因と解決策を紹介しています。

「Accept all changes」が表示されない原因

「Accept all changes」が表示されない場合、以下のようなテキストが提案されるコードの上部に表示されます。

「Accept all changes」が使えない時の注意文
「Accept all changes」が使えない時の注意文

確認できた「Accept all changes」が表示されない原因は、提案生成開始時点と比較して現在のコードが編集されていたり、保存されていなかった場合に発生していたようです。

この問題が発生する一番多いのは「前回の提案を適用後に保存をせずに次の作業をAIに依頼し、提案の最中に保存した」といったケースなのかもしれません。

「Accept all changes」が表示されない時の解決方法

「Accept all changes」が表示されない時、再度適用できるように依頼しても同じような結果になることが多い印象でした。

この問題の解決案は

  • 提案コードをコピーして手動で編集する
  • 新しいチャットを作成して同じ内容の変更を依頼する
  • 「Accept all changes」が表示されていないことを伝える

3つ目の解決策として「Accept all changes」が表示されていないことを伝えると紹介していますが、実際にこの方法で解決した時は以下のような原因があることを知らせてくれました。

また、再度適用をお願いしたときは解決しなかったところ、この方法では最新のコードを下に再提案してくれて、無事「Accept all changes」の機能を使うことができました。

AIが提案を生成している際は、コードを編集するのは避けるべきか

AIが提案を生成している際は、コードを編集するのは避けるべきかどうか。

少なくとも提案されるであろうコードに関連する部分の編集は避けた方が良さそうです。

また、提案を適用したあとはファイルを保存するようにした結果、この問題は殆ど発生しなくなりました。