[Git] Git Stash 命令详解

1. Git Stash 的基本概念

Git Stash 是一个用于暂存当前工作目录中更改的命令。当你正在处理一个功能分支,但突然需要切换到另一个分支进行紧急修复或查看其他工作时,Git Stash 就显得非常有用。它允许你将当前工作目录中的更改保存起来,以便稍后恢复。变基下拉git pull(Rebase)有冲突时也会用到,而且很好用。

2. 使用 Git Stash

2.1 暂存更改

要暂存当前工作目录中的更改,你可以使用以下命令:

git stash

执行此命令后,Git 会将你的更改保存到一个栈中,并清理工作目录,使其看起来像是刚从一个干净的分支检出一样。

2.2 查看暂存的更改

要查看已暂存的更改列表,你可以使用以下命令:

git stash list

这将显示一个包含所有暂存更改的列表,每个更改都有一个唯一的 stash ID。

2.3 恢复暂存的更改

要恢复最近一次暂存的更改,你可以使用以下命令:

git stash pop

这会将最近一次暂存的更改应用到当前工作目录中,并从栈中移除该更改。

如果你只想查看暂存的更改而不应用到工作目录中,可以使用:

git stash apply

这将保留暂存的更改在栈中,以便你可以稍后再次应用或删除它。

2.4 删除暂存的更改

要删除栈中的所有暂存更改,你可以使用:

git stash clear

或者,要删除特定的暂存更改,你可以使用其 stash ID:

git stash drop <stash_id>

3. 注意事项

  • 使用 Git Stash 时,请确保你已经提交了所有不想被暂存的更改。
  • 暂存的更改不会保留分支信息,因此如果你需要知道这些更改是基于哪个分支的,最好在暂存前进行记录。
  • Git Stash 是一个强大的工具,但过度使用可能会导致代码管理混乱。因此,请仅在必要时使用它。

4. 结论

Git Stash 是一个非常有用的命令,它可以帮助你在需要切换到其他分支时暂存当前工作目录中的更改。通过理解其基本概念和用法,你可以更有效地管理你的 Git 仓库和代码更改。

相关推荐
天若有情67312 分钟前
【C++原创开源】formort.h:一行头文件,实现比JS模板字符串更爽的链式拼接+响应式变量
开发语言·javascript·c++·git·github·开源项目·模版字符串
海盗12341 小时前
在群晖NAS上使用Git Server
git
y小花1 小时前
git常用指令
git
华科大胡子1 小时前
开源项目 Git 贡献全流程拆解
git
极地星光1 小时前
工程中:Git 子模块(submodule) vs 直接依赖(源码/库/包管理器)
git
无限进步_3 小时前
【C++&string】大数相乘算法详解:从字符串加法到乘法实现
java·开发语言·c++·git·算法·github·visual studio
无限进步_4 小时前
【C++】验证回文字符串:高效算法详解与优化
java·开发语言·c++·git·算法·github·visual studio
无限进步_7 小时前
【C++】重载、重写和重定义的区别详解
c语言·开发语言·c++·ide·windows·git·github
历程里程碑7 小时前
1 . Git本地操作:版本控制 跨平台协作 仓库核心
java·开发语言·数据结构·c++·git·gitee·github
华科大胡子8 小时前
Git + 云原生
git