什么是git?
- git是一款开源的分布式版本控制工具
- 在世界上所有的分布式版本控制工具中,git是最快、最简单、最流行的
git的起源
- 作者是Linux之父:Linus Benedict Torvalds
- 当初开发git仅仅是为了辅助Linux内核的开发(管理源代码)
git的现状
- 在国外已经非常普及,国内并未普及(在慢慢普及)
- 越来越多的开源项目已经转移到git
git和SVN的简单对比
- 速度
- 在很多情况下,git的速度远远比SVN快
- 结构(最主要的区别)
- SVN是集中式管理,git是分布式管理
- 其他
- SVN使用分支比较笨拙,git可以轻松拥有无限个分支
- SVN必须联网才能正常工作,git支持本地版本控制工作
- 旧版本的SVN会在每一个目录置放一个.svn,git只会在根目录拥有一个.git
注释
-
上面git和SVN的简单对比和上一篇文章都提到集中式管理和分布式管理,那到底是什么呢,OK,看图
-
#######集中式版本控制
集中式版本控制.png -
分布式版本控制
- 通过上面两张图能看出:
分布式和集中式的最大区别在于:
- 在分布式下开发者可以本地提交
- 每个开发者机器上都有一个服务器的数据库
git的工作流程
git的工作流程.png关于git的几个核心概念
如果想了解git的工作原理,有几个核心概念必须知道
- 工作区(Working Directory):仓库文件夹里除.git目录以外的内容
- 版本库(Repository):.git目录,用于存储记录版本信息
- 暂缓区(stage)
- 分支(master):git自动创建的第一个分支
- HEAD指针:用于指向当前分支
git add和git commit的原理
- git add :把文件修改添加到暂存区
- git commit :把暂存区的所有内容提交到当前分支
git工作原理
add commit.png git add.png git commit.png接下来我们一张图搞定git本地操作
git.png远程仓库
- 如果是多人团队开发,最好还是搭建一个远程仓库
搭建远程仓库的途径
- 自己搭建一个git服务器:费时费力
- 在GitHub上托管项目:公开项目免费、私有项目收费,很多第三方开源项目
- 在oschina上托管项目:完全免费,在国内访问速度快(推荐使用)
注:因为在GitHub上托管项目和在oschina上托管项目操作基本相似,所以这里只给大家介绍以下如何在GitHub上托管项目
搭建GitHub远程仓库
- 注册一个GitHub帐号:https://github.com
-
创建远程仓库
GitHub托管项目演示.png - 拷贝仓库地址,用于下载到本地
- ok 远程仓库建好
网友评论