如何在git add后撤销工作?
对于当前工作目录下的所有未暂存文件使用:
git restore .
对于特定的文件使用:
git restore path/to/file/to/revert
这与git switch
一起替换了过载的git checkout
(参见这里),因此删除了参数消歧。
如果一个文件既包含已暂存的更改,又包含未暂存的更改,则只还原git diff
中显示的未暂存更改。git diff --staged
中显示的更改保持不变。
Git 2.23之前
对于当前工作目录下的所有未暂存的文件:
git checkout -- .
对于特定的文件:
git checkout -- path/to/file/to/revert
--
用于消除歧义(这称为参数消歧)。