1分布式与集中式
1)Git是分布式,无SVN那样的“中央服务器”;
2)Git每个人电脑里都有完整的版本库,但是SVN的中央服务器出了问题,所有人都没法干活了;Git除了每人都有一个版本库外,还有一个远程仓库,SVN只有一个版本库;
3)SVN适合于局域网,因为它在网速慢的时候,可能提交一个10M的文件都需要5分钟,在这种情况下,Git只需要提交到本地库便可;
4)Git有暂存区的概念进而实现每次提交的是修改,SVN无;
2 Git版本管理基本思想和命令
版本管理的文件类型
版本控制系统无法管理二进制文件。只能跟踪文本文件,TXT文件,网页,程序代码等纯文本文件。
最好使用标准的UTF-8编码。
工作区(Working Directory):本地被管理的文件(不带.git的其他文件夹);
版本库(Repository): **.git文件夹**。
理解Git的暂存区
理解Git的暂存区(stage 或 index)如下图所示,左侧是工作区(working directory),右侧是版本库(Repository),每次add某个文件时,就会存放在版本库的stage,commit后才真正的提交到本地的版本库中,默认git init时,会创建一个master分支,以及一个指向master的指针Head。
如果修改的文件不存放到stage中,就直接commit,修改就不会提交到本地版本库。
分支管理
初始只有一个master分支,HEAD指向master,如下图a所示,