元に戻す
戻せるから、任せられる
AI に大胆に任せられる人と、こわごわしか頼めない人の違いは、才能ではありません。戻す手段を持っているかどうかです。
git で変更を記録しておけば、AI が何をしても1コマンドで元に戻せます。戻せると分かっていれば、失敗の代償が「数分の時間」だけになります。
プレーンテキスト
戻せない状態 失敗したら手で直す。だから小さくしか頼めない
戻せる状態 失敗したら捨てる。だから大きく頼める頼む前にコミットする
覚えることは1つだけです。AI に頼む前に、いまの状態をコミットしておく。
プレーンテキスト
git add -A
git commit -m "AIに頼む前の状態"これで、いまのコードに戻れる印がつきました。この一手間を省くと、AI の変更と自分の書きかけの変更が混ざり、どこまでが AI の仕業か分からなくなります。
戻し方は2つ
差分を読んで破棄すると決めたときの戻し方は、状況で2つに分かれます。
プレーンテキスト
git restore <ファイル名> そのファイルだけ、直前のコミットに戻す
git restore . 変更を全部捨てて、直前のコミットに戻すどちらもコミットしていない変更を消します。裏返すと、コミット済みのものは消えません。だからこそ、頼む前のコミットが効いてきます。
注意点は次のとおりです。restore は確認を聞いてきません。実行した瞬間に消えます。自分の書きかけが混ざっていないかを、先に確かめてください。
部分的に採用したいとき
5個の変更のうち3個だけ良かった、ということはよくあります。このとき無理に手で選り分けようとしないでください。
全部捨てて、良かった3個だけをもう一度頼む方が速い。 選り分けは、差分を1行ずつ見て取捨する作業になり、時間もかかればミスもします。それなら、いま分かった「良かった3個」を指示に書き直して、きれいな差分をもらう方が確実です。
捨てるのは失敗ではありません。捨てて頼み直すのが、標準の手順です。
今回の演習では、戻した後に頼み直すつもりで指示を書いてみてください。一度で通そうとせず、条件を全部書き切ることを意識します。
完成条件
- 触ってよいのは kakeibo.py だけです
- 引数で受け取ったリストそのものは書き換えず、新しいリストを返します
- removeCategory 関数の戻り値で採点します