Git4 択難易度 標準

add したファイルをステージから外したい。実行後もステージに残っている。正しいのは?

git restore app.js

正答

  1. git restore --source=HEAD app.js
  2. git rm --cached app.js
  3. git restore --staged app.js
  4. git reset --hard app.js

解説

git restore app.js は作業ツリーのファイルをステージの内容に戻す操作で、ステージ自体は変わらない(しかも未保存の編集が消える)。ステージから外すだけなら git restore --staged app.js(古い書き方は git reset HEAD app.js)。--source=HEAD は作業ツリーを HEAD の内容に戻すだけでステージは残る。git rm --cached は追跡そのものを外して削除予定にする。reset --hard にパスは渡せずエラーになる。

参考: git-scm.com

restorestaging

この問題を含む Git のテストを制限時間つきで解く

Gitクイズへ