1. git和svn相比较
svn每次只记录改动的内容
git每次都复制一个copy(大家都夸git这个方法看似笨重,但对版本控制来说非常方便)
咱也不知道,咱也不敢问!咱以后知道了再来写一下吧!
2. git的核心:维护三棵树
你的本地仓库有 Git 维护的三棵“树”组成,这是 Git 的核心框架。
这三棵树分别是:工作区域、暂存区域和 Git 仓库。
工作区域(Working Directory)就是你平时存放项目代码的地方。
就是你在电脑里能看到的目录。
暂存区域(Stage)用于临时存放你的改动,事实上它只是一个文件,保存即将提交的文件列表信息。
暂存区:英文叫stage, 或index。一般存放在 ".git目录下" 下的index文件(.git/index)中,所以我们把暂存区有时也叫作索引(index)。
Git 仓库(Repository)就是安全存放数据的位置,这里边有你提交的所有版本的数据。其中,HEAD 指向最新放入仓库的版本
这第三棵树,确切的说,应该是 Git 仓库中 HEAD 指向的版本。
3. git的工作流程
Git 的工作流程一般是酱紫:
- 在工作目录中添加、修改文件;
- 将需要进行版本管理的文件放入暂存区域;
- 将暂存区域的文件提交到 Git 仓库。
3. git的三种状态
因此,Git 管理的文件有三种状态:
已修改(modified)、已暂存(staged)和已提交(committed),依次对应上边的每一个流程。
4. 我的学习心得
确实,不谈版本控制的话,git的原理就只有这点少的可怜的东西。
也就是平时使用的大多数命令都只用到了上面的这些知识。
理解起来也不是很难,但是要做到熟练或者精通需要在使用过程中去体会和练习。
Talk is cheap. Show me the code!