Git命令集十三——快照操作

Git命令集十三——快照操作

    Git工具中提供了一个stash命令,这个命令的作用是创建快照。快照主要的用途是将当前未更新到缓存区的修改进行入栈保存,创建快照后,Git的状态会变回上一次提交时的状态,这时候我们可以做其他的操作。创建的快照会被保存在栈中,在需要的时候,我们可以恢复快照。举一个小例子,实际开发中,很多情况我们都会从主分支拉出一个新的分支进行新功能的开发,如果我们在开发过程中,有一个紧急的bug需要到主分支中修改,这时候我们常常会将目前为完善的代码先提交到新的分支,然后切回主分支修改bug,之后再回来继续开发。但是如果这个新的分支并不只是你一个人开发,你的不完善的提交很有可能造成别人无法工作,其实你可以使用Git的快照命令,先将自己的修改存成快照入栈保存,回到主分支修改完bug后,在将快照出栈即可。

1.git stash

    将当前未更新到缓存区的修改创建成快照。需要注意,快照是采用栈的方式管理。我们可以入栈多个快照,例如先做一部分修改,创建为快照,之后又进行了修改,再次创建快照。第2次快照并不会覆盖以前的快照,我们可以指定恢复到的快照。

2.git stash list

    打印当前栈中的所有快照。

3.git stash show <stash>

    打印某个快照的修改信息,后面的stash参数指定快照在栈中的位置,命令格式如下:stash@{num},最后入栈的为stash@{0},向前依次为stash@{1}、stash@{2}...。如果不限stash参数,则默认将打印栈顶快照的信息。

4.git stash pop <stash>

    恢复到某个快照版本,如果不加stash参数,则默认会恢复到栈顶的快照版本。这个命令会将恢复的快照从栈中删除掉。

5.git stash apply <stash>

    恢复到某个快照的版本,如果不加stash参数,则默认会恢复到栈顶的快照版本。这个命令和pop的不同之处在于恢复的快照并不会从栈中删除。

6.git stash clear

    清空栈中的所有快照。

7.git stash drop <stash>

    清除栈中的某个快照,如果不设置stash参数,则会默认清除栈顶的快照。

 

转载于:https://my.oschina.net/u/2340880/blog/863881

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值