ファイルのステージングを解除する
CoddyのTerminalジャーニー「バージョン管理」セクションの一部 — レッスン 41/58。
次のコミットに含めるつもりのなかったファイルを誤ってステージングしてしまった場合は、次のコマンドでステージングを解除できます:
git restore --staged secrets.txt--stagedフラグは、git restoreに対して、作業ディレクトリではなくステージングエリアを変更するように指示します。ファイルの内容自体は変更されず、ステージングされた状態のみがリセットされます。
ステージングを解除した後、git status を実行すると、ファイルは再び「変更されたがステージングされていない」状態として表示されます。その後、別のサブセットをステージングするか、変更を後回しにするかを選択できます。
これは、変更を完全に破棄したい場合に git restore filename (--staged なし) と組み合わせて使うと便利です。最初にステージングを解除し、次にファイルを復元します。
チャレンジ
簡単フォルダには、コミット済みの todo.txt と、まだコミットされていない secrets.txt が含まれています。
両方のファイルをステージングし、その後 secrets.txt だけをステージング解除してください。git status --short を実行して結果を確認します。
期待される出力(順序に注意してください):最初に todo.txt のステージングされた追加行、次に secrets.txt の追跡されていない行が表示されます。
チートシート
ファイルをアンステージする(作業ディレクトリの変更は保持する):
git restore --staged secrets.txt--stagedフラグはステージングエリアのみをリセットします。ファイルの内容は変更されません。--stagedがない場合、git restoreは作業ディレクトリの変更を完全に破棄します。
自分で試してみよう
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。