使用git前,大家应该了解的几个关于git的概念。
- Workspace(工作区):也就是我们文件系统中的文件或文件夹
- Index / Stage(暂存区):也就是我们执行git add命令后文件所在的位置(当然,我们的工作区的内容都还在,只是把工作区复制到暂存区)。
- Repository(仓库区、本地仓库):执行git commit后,或者下拉的远程仓库后的,本地仓库会修改。
- Remote(远程仓库):就是git网站上保存的文件。
对于git命令不熟悉的同学,可以走这个传送门。
下面开始总结:
一、
当我们修改了工作区文件,但是又想要pull下拉远程仓库的文件的时候,我们需要先add到暂存区,再commit到本地仓库。
这样的情况我们是不希望的,我们希望直接pull远程仓库的文件,这时候
git stash
就能帮到我们。
git stash 是把我们的工作区文件放在一个缓存区里,再把工作区文件还原成本地仓库,这时我们就可以pull远程仓库了。
当然,我们之前修改的文件在工作区里已经没有了,而是放在刚刚的缓存区里。
这时,我们再执行
git stash pop
就可以的缓存区里我们修改过的文件再还原回工作区了。
二、
如果我们的本地仓库有多个分支。
当我们切换分支的时候,我们的工作区文件也是会切换的哦!
三、
git的模式就像是区块链,git的模式也是一个去中心化的思想。
而svn则相反,svn的模式是中心化的思想。
最后,git界面化工具的链接:
https://pan.baidu.com/s/11pv5N-UF0ekmbXSS4B_Y0w
密码6k6i