Git 工具 - 储藏(Stashing)

 

储藏(Stashing) 

 

经常有这样的事情发生,你正在某个分支中进行开发工作,里面的东西处于一个比较杂乱的状态,而你又要转到其他分支上进行一些工作。问题是,必须先提交代码才能切换分支,但你不想提交进行了一半的工作,否则以后你无法回到这个工作点。解决这个问题的办法就是git stash命令。

“‘储藏”“可以获取你工作目录的中间状态——也就是你修改过的被追踪的文件(未暂存的变更)和暂存的变更——并将它保存到一个未完结变更的堆栈中,随时可以重新应用。

 

堆栈中的结点是有序号的:栈顶的序号是0,栈底的序号是n-1。

 

1 往堆栈推送一个新的储藏 

 git stash

 

2 重新应用储藏

相同点:默认只操作栈顶结点。如果提供--index选项,则操作指定的结点。

不同点:git stash pop会将结点从堆栈中删除,git stash apply则不会。

git stash pop

git stash pop --index stash@{结点的序号}

git stash apply

git stash apply --index stash@{结点的序号}

 

3 查看储藏堆栈

 git stash list

 

4 移除储藏

git stash drop stash@{结点的序号}

git stash drop stash@{0},可以删除栈顶结点

 

5 清空储藏

git stash clear  对于使用git stash drop无法移除的储藏,可使用该命令清空

 

posted on 2019-01-10 14:08  沙滩海风  阅读(818)  评论(0编辑  收藏  举报

导航