誤って一時ファイルをたくさん追加してしまいましたgit add -A
次のコマンドを使用してファイルをアンステージし、ダーティ インデックスを削除することができました。
git ls-files -z | xargs -0 rm -f
git diff --name-only --diff-filter=D -z | xargs -0 git rm --cached
上記のコマンドは にリストされていますgit help rm
。しかし残念なことに、キャッシュ オプションを指定しても、実行時にファイルも削除されてしまいました。コンテンツを失わずにインデックスをクリアするにはどうすればよいでしょうか?
また、このパイプ操作がどのように機能するかを誰かが説明してくれると助かります。
ベストアンサー1
git reset
過剰な「git add」実行を元に戻すだけの場合は、以下を実行します。
git reset
変更はステージング解除され、必要に応じて再度追加できるようになります。
走らないでgit reset --hard
。
追加したファイルをステージ解除するだけでなく、作業ディレクトリで行った変更も元に戻します。ただし、作業ディレクトリに新しいファイルを作成した場合、それらのファイルは削除されません。