Git-git stash与分支管理

git stash是什么?

想象一下,您正在一个功能分支上编码,突然需要切换到另一个分支去修复一个紧急的 Bug。但您当前的工作还没完成,不想提交一个半成品。这时,git stash 就像一个 "剪贴板""临时储物柜",它可以把您所有未提交的更改(包括已跟踪文件的修改和暂存区的更改)安全地保存起来,让工作目录恢复到上一次提交的干净状态。之后,您可以随时将这些更改重新应用回来。

常用命令

| git stashgit stash push | 储存当前所有未提交的更改(默认不包括未跟踪的文件)。 |
| git stash save "消息" | 储存更改并添加一条描述消息(较新版本推荐使用 git stash push -m "消息")。 |
| git stash list | 列出所有的储存条目。 |
| git stash apply | 应用 最新的储存(stash@{0}),但不删除它。 |
| git stash pop | 应用并删除 最新的储存(stash@{0})。 |
| git stash drop | 删除 指定的储存,不应用。例如 git stash drop stash@{1}。 |
| git stash clear | 清空所有储存。 |
| git stash show | 显示最新储存的文件改动概览。 |
| git stash show -p | 显示最新储存的详细代码差异。 |

git stash branch <分支名> 基于创建储存时的提交,新建一个分支并应用储存。解决冲突的神器

分支管理

git 的分支整体预览图如下:

master:git默认主分支(这里不作操作)。

stable:稳定分支,替代master,主要用来版本发布。

develop:日常开发分支,该分支正常保存了开发的最新代码。

feature:具体的功能开发分支,只与 develop 分支交互。

release:release 分支可以认为是 stable分支的未测试版。比如说某一期的功能全部开发完成,那么就将 develop 分支合并到 release分支,测试没有问题并且到了发布日期就合并到 stable分支,进行发布。

bugfix:线上 bug 修复分支。

相关推荐
A_Lonely_Cat2 小时前
记一次 GitHub 幽灵协作者大清洗:强制重写 Git 历史与穿透 CDN 缓存实践
git·github
和你看星星2 天前
Git rerere:让重复冲突只解决一次
git
嘻嘻仙人6 天前
Ubuntu中 git上传自己的项目和二次上传一般流程
git·github
Patrick_Wilson6 天前
Squash Merge 的血缘陷阱:为什么删掉的代码又活了过来
前端·git·程序员
沉浸学习的匿名网友6 天前
什么是 .gitignore?为什么每个 Git 项目几乎都离不开它?
前端·git
深海鱼在掘金7 天前
Git 完全指南 —— 第3章:理解工作区、暂存区、版本库三个核心
git
江华森7 天前
Git 基础筑基:从原理到团队协作的全栈实战
git
JakeJiang7 天前
Git 必备命令指南:从日常高频到项目开发实战
git
叫我少年8 天前
Windows 中安装 git
git
深海鱼在掘金13 天前
Git 完全指南 —— 第1章:Git 概览与版本控制演进
git