git 中 stage 与 stash 的差别?

git中stash和stage两个功能乍一看上去挺相似的。其实二者是两个完全不同的概念。

1、git 中共有四大分区:

    1. 工作区(Working Area)
    1. 暂存区(Stage)
    1. 本地仓库(Local Repository)
    1. 远程仓库(Remote Repository)

stage是git中的一个区域。

2、stash是git中的一个命令。git stash的作用是把工作区(必须是工作区中已经被git追踪到的文件)和索引中的内容暂时存到一个堆上。而且这个堆是和分支不相关的。切换分支后,依然可以看到并使用。

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

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

参考资料

 

 

kbc C87 机械键盘 有线键盘 游戏键盘 87键 原厂cherry轴

关注微信公众号

码中人 微信公众号