过git stash命令可以在需要的时候保存工作进度,在完成其他任务后
时间: 2025-06-27 22:03:55 浏览: 47
### 使用 `git stash` 命令保存和恢复工作进度
#### 什么是 `git stash`
`git stash` 是一种用于临时存储当前工作区和暂存区更改的工具。它允许开发者在不需要立即提交的情况下,将未完成的工作暂时保存起来,并清理工作区以便进行其他操作(如切换分支或拉取远程更新)。之后可以随时恢复之前保存的内容。
#### 如何使用 `git stash` 保存工作进度
要保存当前的工作状态,可以通过以下命令实现:
```bash
git stash
```
此命令等同于运行 `git stash push`[^4],并将当前工作区和暂存区中的更改保存到一个堆栈中。默认情况下,该命令不会保存未跟踪的文件。如果希望也保存未跟踪的文件,则需加上 `-u` 参数:
```bash
git stash -u
```
还可以为每次 stashing 添加描述信息以方便识别:
```bash
git stash push -m "描述信息"
```
#### 查看已保存的 stash 列表
为了查看已经保存的所有 stash 记录及其 ID,可使用以下命令:
```bash
git stash list
```
每条记录都会显示类似于 `stash@{0}` 的编号形式,这是用来区分不同 stash 条目的唯一标识符[^1]。
#### 恢复指定的 stash 进度至工作区
当需要重新应用某个特定版本的 stash 修改时,有两种主要的方式可以选择:
1. **仅应用而不删除**
如果只想把选定的 stash 应用回当前目录但保留原 stash 不变的话,应该采用 `apply` 方法:
```bash
git stash apply stash@{X}
```
此处 X 表示目标 stash 对应的位置索引号[^2]。
2. **应用并移除对应的 stash**
若既想恢复又不想再保留原来的 stash 数据,则推荐利用 `pop` 功能来达成这一需求:
```bash
git stash pop stash@{Y}
```
Y 同样代表具体哪一个 stash 需被处理。
需要注意的是,在某些特殊情形下可能会发生冲突现象;遇到这种情况时手动解决后再继续即可。
#### 删除不再需要的 stash
对于那些已经被成功还原或者确认无误后无需再次使用的 stash 资料来说,应当及时清除它们以免占用不必要的空间资源。单个删除可通过如下指令完成:
```bash
git stash drop stash@{Z}
```
而批量清空整个列表则只需简单一句代码便能搞定:
```bash
git stash clear
```
以上就是关于如何运用 `git stash` 实现高效管理项目开发过程中间态的一些基本技巧介绍[^3]。
---
阅读全文
相关推荐



















