博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
git stash 暂存当前修改
阅读量:5882 次
发布时间:2019-06-19

本文共 843 字,大约阅读时间需要 2 分钟。

当我们在开发项目的时候,突然来一个变更需要修改,我们除了将当前项目提交(commit)后切换(checkout) 到其他分支外,我们还可以先将当前的修改暂存(stash)起来,然后再切换(checkout)到其他分支,而不需要提交(commit),这样就可以减少一个 commit (虽然可以使用 git commit --amend 来修改最后一次提交 )。

 

暂存修改有两种情况:

1、文件已经被 git 跟踪,只是修改了代码(而不是新条件文件),我们可以使用 git stash 或 git stash save "注释" 来暂存修改。

2、如果有新添加的文件,那么就需要添加 -a 参数(如,git stash -a 或 git stash save -a "注释"),或先 git add . 然后再使用 git stash 或 git stash save "注释" 来暂存修改。

 

当完成了变更,在开启项目,开启项目某一个暂存可以使用 git stash apply stash@{id} ,stash@{id}里面的id默认从0开始,最近的暂存为0。如果开启最近的一个暂存,则可以使用 git stash pop 或 git stash apply stash@{0} 来开启。

就视觉效果来说,git stash pop 和 git stash apply stash@{0} 效果是一样的,但是,在某些方面这两个命令还是有所区别的,git stash pop 开启某个修改暂存后,会在 stash list 里面将最近一次的修改暂存记录删除掉,而 git stash apply stash@{0} 则不会。

 

查看有多少个修改暂存,可以使用 git stash list 来查看 stash 列表。

 

我们也可删除修改暂存,删除某一个修改暂存,git stash drop stash@{id},如果需要清空所有的修改暂存,可以使用 git stash clear 命令。

转载地址:http://lwpix.baihongyu.com/

你可能感兴趣的文章
2013年SEO集群最新优化工具
查看>>
SQL:连表查询
查看>>
MySQL日期函数、时间函数总结(MySQL 5.X)
查看>>
c语言用尾插法新建链表和输出建好的链表
查看>>
Java基础学习总结(1)——equals方法
查看>>
Java基础学习总结(2)——接口
查看>>
【性能优化】---懒加载---
查看>>
DNS 不生效的修改方法
查看>>
web.xml配置详解
查看>>
HTTP协议详解
查看>>
Struts2文件上传
查看>>
我的友情链接
查看>>
Oracle数据库之SQL起航
查看>>
Oracle数据库之SQL单行函数---日期函数集锦
查看>>
使用OpenCV与Face++实现人脸解锁
查看>>
高性能 Oracle JDBC 编程
查看>>
java 中ResultSet可以获取的数据类型及返回值类型列表
查看>>
ubuntu 13 安装SH程序
查看>>
如何用几个简单的命令改善你的Linux安全
查看>>
查看MySQL记录执行过的SQL
查看>>