【分享】git stash 防止干扰别人或者新分支工作的git命令

导读:本篇文章讲解 【分享】git stash 防止干扰别人或者新分支工作的git命令,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

背景:

在工作中我们常常会有这样一个工作场景,正在新任务开发中突然你的leader过来,某某你去把x.x.x版本的bug给修复一下,需要马上处理。然而手里正在开发的新功能写到一半又不想提交。那么该怎么办呢?
肯定有这种情况:因为当前有文件更改了,需要提交commit保持工作区干净才能切分支。由于情况紧急,只有急忙 commit 上去,commit 信息也随便写了个“暂存代码”或是“…”,于是该分支提交记录就留了一条黑历史。

使用git stash命令解决

stash在英文意思是隐藏。git stash 的作用也是隐藏没完成的代码,防止干扰别人或者新分支的工作。
stash 命令能够将还未 commit 的代码存起来,让你的工作目录变得干净。

如果你学会 stash,就不用那么狼狈了。你只需要:

git stash

改完bug后,在切回dev分支,并恢复刚才的代码:

git stash apply

git stash 相关命令解释及使用

命令名 作用
git stash 隐藏当前的工作现场, 此时, git status的结果是 clean
git stash list 查看所有隐藏, 每一行的冒号前面的字符串就是标识此隐藏的id
git stash apply 重新显示标识为 id 的隐藏
git stash drop git apply恢复隐藏后, 需要手动删除 list 列表中的记录
git stash pop 恢复最新的进度到工作区
git stash pop stash@[stash_id] 恢复指定的进度到工作区
// 保存当前未commit的代码
git stash

// 保存当前未commit的代码并添加备注
git stash save "备注的内容"

// 列出stash的所有记录
git stash list

// 删除stash的所有记录
git stash clear

// 应用最近一次的stash
git stash apply

// 应用最近一次的stash,随后删除该记录
git stash pop

// 删除最近的一次stash
git stash drop

git stash 使用场景

场景一:不小心在不该开发的分支做了改动

例如忘记切换,将代码写错了分支,直接在 master 分支上做改动,这里假设我的分支是dev分支。

// 把本地当前改动暂存起来,此时master分支就恢复到了上次拉取时的状态
git stash
// 切换到需要改动的分支
git checkout dev
// 将改动pop到自己当前的分支
git stash pop

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/64753.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!