Gemini Code Assistで「Accept all changes」が表示されない問題の原因と解決策
VSCodeからGemini Code Assistを利用していると「Accept all changes」が表示されずに、変更の提案をコードに適用できない時があります。
この問題が発生する原因と解決策を紹介しています。
「Accept all changes」が表示されない原因
「Accept all changes」が表示されない場合、以下のようなテキストが提案されるコードの上部に表示されます。
「The code change produced by Gemini cannot be automatically applied. You can manually apply the change or ask Gemini to try again.(Gemini によって生成されたコード変更は自動的に適用されません。手動で変更を適用するか、Gemini に再試行を依頼してください。)」

確認できた「Accept all changes」が表示されない原因は、提案生成開始時点と比較して現在のコードが編集されていたり、保存されていなかった場合に発生していたようです。
この問題が発生する一番多いのは「前回の提案を適用後に保存をせずに次の作業をAIに依頼し、提案の最中に保存した」といったケースなのかもしれません。
「Accept all changes」が表示されない時の解決方法
「Accept all changes」が表示されない時、再度適用できるように依頼しても同じような結果になることが多い印象でした。
この問題の解決案は
- 提案コードをコピーして手動で編集する
- 新しいチャットを作成して同じ内容の変更を依頼する
- 「Accept all changes」が表示されていないことを伝える
3つ目の解決策として「Accept all changes」が表示されていないことを伝えると紹介していますが、実際にこの方法で解決した時は以下のような原因があることを知らせてくれました。
「以前の変更が適用されたことで元のファイルが変更され、差分を自動適用できなくなったために発生することがあります。」
また、再度適用をお願いしたときは解決しなかったところ、この方法では最新のコードを下に再提案してくれて、無事「Accept all changes」の機能を使うことができました。
「ご提示いただいた最新のファイルを元に、改めて修正を合わせた差分を作成しました。」
AIが提案を生成している際は、コードを編集するのは避けるべきか
AIが提案を生成している際は、コードを編集するのは避けるべきかどうか。
少なくとも提案されるであろうコードに関連する部分の編集は避けた方が良さそうです。
また、提案を適用したあとはファイルを保存するようにした結果、この問題は殆ど発生しなくなりました。