git stash使用方式
时间: 2024-01-03 15:23:08 浏览: 31
git stash是一个非常有用的命令,它可以帮助你保存当前的工作进度,并将暂存区和工作区的改动保存到一个未完结变更的堆栈中。这样做的好处是,你可以在切换分支或者处理其他任务时,暂时隐藏当前的工作现场,以免和其他任务的改动混淆。下面是git stash的使用方式:
1. 查看已经stash的记录:
```shell
git stash list
```
这个命令会列出所有已经stash的记录,每一行的冒号前面的字符串就是标识此隐藏的id。
2. 隐藏当前的工作现场:
```shell
git stash
```
执行这个命令后,git会将当前的工作现场保存到一个新的stash记录中,并将工作区和暂存区恢复到干净的状态。
3. 恢复隐藏的工作现场到工作区:
```shell
git stash apply
```
这个命令会将最新的stash记录中的改动恢复到工作区,但是不会删除stash记录。
4. 删除stash记录:
```shell
git stash drop
```
这个命令会删除最新的stash记录。
5. 恢复指定的stash记录到工作区:
```shell
git stash apply stash@{stash_id}
```
这个命令会将指定id的stash记录中的改动恢复到工作区,但是不会删除stash记录。
请注意,git stash命令是本地的,不会上传到服务器上。你可以使用git stash save 'message...'来为stash记录添加一些注释。
相关问题
git stash使用例子
当你在使用Git进行代码开发时,有时候你可能需要暂时保存你的修改,但又不想提交到版本库中。这时候,你可以使用Git的stash命令来实现。下面是一个使用Git stash的例子:
假设你正在进行一个新功能的开发,但是突然接到了一个紧急bug修复的任务。你还没有完成新功能的开发,但是也不想丢失你已经做的修改。这时候,你可以使用stash命令来保存你的修改。
1. 首先,使用git stash命令将你的修改保存到一个临时区域:
```
git stash
```
2. 然后,切换到其他分支或者进行其他操作。
3. 当你完成了紧急任务后,可以切换回原来的分支,并使用git stash list命令查看保存的stash列表:
```
git stash list
```
4. 如果你只有一个stash,可以使用git stash apply命令将修改应用到当前分支:
```
git stash apply
```
如果有多个stash,可以使用git stash apply加上stash的索引号来应用指定的stash:
```
git stash apply stash@{2}
```
5. 如果你想在应用stash后将其从stash列表中删除,可以使用git stash drop命令:
```
git stash drop
```
同样地,如果有多个stash,可以使用git stash drop加上stash的索引号来删除指定的stash:
```
git stash drop stash@{2}
```
6. 如果你想在应用stash后将其从stash列表中删除,并且不保留任何修改,可以使用git stash pop命令:
```
git stash pop
```
同样地,如果有多个stash,可以使用git stash pop加上stash的索引号来应用指定的stash并删除:
```
git stash pop stash@{2}
```
git stash 使用
`git stash` 可以将你当前工作的修改暂时存储起来,以便你可以在不切换分支或提交更改的情况下执行其他操作。
使用 `git stash` 命令可以将修改存储到一个堆栈中。具体用法如下:
- 存储修改:`git stash`
- 存储修改并添加说明:`git stash save "说明"`
- 查看存储的修改:`git stash list`
- 应用最新的存储的修改:`git stash apply`
- 应用指定的存储的修改:`git stash apply stash@{num}`
- 应用最新的存储的修改并删除该修改:`git stash pop`
- 应用指定的存储的修改并删除该修改:`git stash pop stash@{num}`
- 删除最新的存储的修改:`git stash drop`
- 删除指定的存储的修改:`git stash drop stash@{num}`
- 应用最新的存储的修改到一个新的分支上:`git stash branch new_branch_name`
需要注意的是,如果你使用了 `git stash apply` 命令,但是没有删除该修改,那么你可以使用 `git stash drop` 命令来删除该修改。