ステージングのみ取り消す
変更内容はそのままにステージングのみ取り消すには以下を実行します。
git restore --staged パス
test.txtを作成して試しに実行してみます。
作成後にgit add test.txtを実行した状態が下の画像です。
「ステージされている変更」にtest.txtがあります。
ターミナルでコマンドを実行し取り消します。
git restore --staged test.txt
ステージングが取り消されて「変更」にtest.txtが表示されています。
なお--stagedをつけないで実行するとステージ後に加えた変更を取り消せます。
ステージ後にtest.txtへ変更を加えます。
ステージ後に変更が加えられたため「ステージされている変更」と「変更」の両方に
test.txtが表示されています。
--stagedをつけないで実行します。
git restore test.txt
するとステージング後のtest.txtへの変更が取り消されます。
「変更」からtest.txtの表示が消えました。
変更内容ごと取り消す
変更内容ごとステージを取り消すには以下のように実行します。
git restore --source=HEAD --staged --worktree パス
上記を実行するとステージと変更内容の両方が取り消され、直前のコミットの状態に戻ります。
ステージング前の変更のみ取り消す
ステージング前の変更のみ取り消すには以下のように実行します。
git restore --worktree パス



