Git 使用手册
Git 使用手册
restore
git restore 用于将文件恢复到指定提交的状态。
默认操作 工作区,加上 --staged 参数则操作 暂存区。
1. 从哪里恢复
- 从暂存区恢复(索引)
git restore --source index
⚡ 实际不可以指定
--source为index
- 在没有
--staged的条件下,source 默认就是 index- 在有
--staged的情况下,source 默认为 HEAD。
为什么不支持 index 我想原因也很简单,从暂存区恢复,无非只能恢复到工作区嘛,而且worktree 这个参数也是默认的
git restore --source index --worktree .
那就索性使用 git restore .替换好了
- 当前分支最新提交:
git restore --source HEAD
- 本地分支:
git restore --source feature
- 远程分支的特定提交(倒数第 3 次提交):
git restore --source origin/feature~2
2. 恢复到哪里
- 工作区(默认):
--worktree
- 暂存区:
--staged
- 同时恢复工作区和暂存区:
--worktree --staged
⚡ 同时加
--worktree --staged的效果等同于“恢复文件 + git add”。
3. 恢复哪些文件
- 全部文件:
-- .
- 指定文件:
-- foo.py bar.py
4. 常用组合示例
# 恢复全部文件到工作区和暂存区
git restore --source HEAD --staged --worktree -- .
# 恢复单个文件到暂存区
git restore --source feature~1 --staged -- foo.py
5. 核心要点
git restore= 把文件恢复到指定提交状态- 不会移动 HEAD,不会生成 commit
- 不会产生冲突,安全用于临时回退或 CI 验证
- 核心用法就是三类组合:从哪里恢复 + 恢复到哪里 + 恢复哪些文件

浙公网安备 33010602011771号