編集この質問は 2 つの方法で理解でき、最適な答えは 2 つのケースで異なります。
質問 1:これまで追跡されていなかったファイルをステージング領域に追加しました。このファイルをファイル システムから削除せずにステージング領域から削除するにはどうすればよいですか?
回答1: で説明されているように、次のコマンドを使用します。ジョン・フェミネラの回答:
git rm --cached <file>
質問 2:すでに追跡されているファイルを変更し、その変更をステージング領域に追加しました。ステージング領域から変更を削除するにはどうすればよいですか? つまり、ファイル内の変更をステージング解除するにはどうすればよいですか?
回答2: で説明されているように、次のコマンドを使用します。デイビッド・アンダーヒルの回答:
git reset <file>
ベストアンサー1
あなたが望むこと:
git rm --cached [file]
オプションを省略すると--cached
、作業ツリーからも削除されます。git rm
は よりも少し安全ですgit reset
。ステージングされたコンテンツがブランチの先端またはディスク上のファイルと一致しない場合に警告が表示されるためです。(一致しない場合は を追加する必要があります--force
。)