1. ホーム
  2. ギット

[解決済み】Gitでステージング・エリア(=インデックス=キャッシュ)からファイルを削除する方法は?

2022-04-14 16:30:59

質問

EDIT この質問は2つの意味で理解することができ、最適な答えは2つのケースで異なります。

  • 質問1: 私は 以前は追跡されていなかったファイル をステージング・エリアに追加しました。このファイルをファイルシステムから削除せずに、ステージング・エリアから削除するにはどうしたらよいですか?

    回答1:以下のコマンドを使用します。 John Feminellaの回答 :

    git rm --cached <file>
    
    
  • 質問2 ファイルは、すでに追跡されている そして、その変更をステージング・エリアに追加しました。ステージング・エリアから自分の変更を削除するにはどうすればよいですか?つまり、ファイル内の私の変更のステージングを解除するにはどうすればよいのでしょうか?

    回答2:以下のコマンドを使用してください。 David Underhillの回答 :

    git reset <file>
    
    

解決方法は?

あなたが欲しいのは

git rm --cached [file]

を省略した場合 --cached オプションを使用すると、作業ツリーからも削除されます。 git rm よりも若干安全です。 git reset なぜなら、ステージングされた内容がブランチの先端やディスク上のファイルと一致しない場合、警告が表示されるからです。(一致しない場合は --force .)