Git
一、Git分布式版本控制工具
1.1 Git历史
Git 诞生于一个极富纷争大举创新的年代。Linux 内核开源项目有着为数众多的参与者。 绝大多数的 Linux 内核维护工作都花在了提交补丁和保存归档的繁琐事务上(1991-2002年间)。 到 2002 年,整个项目组开始启用一个专有的分布式版本控制系统 BitKeeper 来管理和维护代码。
到了 2005 年,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结束,他们收回了 Linux 内核社区免费使用 BitKeeper 的权力。 这就迫使 Linux 开源社区(特别是 Linux 的缔造者 Linus Torvalds)基于使用 BitKeeper 时的经验教训,开发出自己的版本系统。
他们对新的系统制订了若干目标:
- 速度
- 简单的设计
- 对非线性开发模式的强力支持(允许成千上万个并行开发的分支)
- 完全分布式
- 有能力高效管理类似 Linux 内核一样的超大规模项目(速度和数据量)
1.2 Git与SVN对比
SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而开发人员工作的时候,用的都是自己的电脑,所以首先要从中央服务器下载最新的版本,然后开发,开发完后,需要把自己开发的代码提交到中央服务器。
集中式版本控制工具缺点:
- 服务器单点故障
- 容错性差
Git是分布式版本控制系统(Distributed Version Control System,简称 DVCS) ,分为两种类型的仓库:本地仓库和远程仓库
- 本地仓库:是在开发人员自己电脑上的Git仓库
- 远程仓库:是在远程服务器上的Git仓库
- Clone:克隆,就是将远程仓库复制到本地
- Push:推送,就是将本地仓库代码上传到远程仓库
- Pull:拉取,就是将远程仓库代码下载到本地仓库
1.3 Git工作流程
工作流程如下:
- 1.从远程仓库中克隆代码到本地仓库
- 2.从本地仓库中checkout代码然后进行代码修改
- 3.在提交前先将代码提交到暂存区
- 4.提交到本地仓库。本地仓库中保存修改的各个历史版本
- 5.修改完成后,需要和团队成员共享代码时,将代码push到远程仓库
1.4 Git下载与安装
下载完成后可以得到如下安装文件:
二、Git代码托管服务
2.1 常用的Git代码托管服务
前面我们已经知道了Git中存在两种类型的仓库,即本地仓库和远程仓库。那么我们如何搭建Git远程仓库呢?我们可以借助互联网上提供的一些代码托管服务来实现,其中比较常用的有GitHub、码云、GitLab等。
- gitHub( https://github.com )是一个面向开源及私有软件项目的托管平台,因为只支持Git 作为唯一的版本库格式进行托管,故名gitHub。
- 码云(https://gitee.com )是国内的一个代码托管平台,由于服务器在国内,所以相比于GitHub,码云速度会更快。
- GitLab (https://about.gitlab.com )是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的web服务。
2.2 在码云注册账号
要想使用码云的相关服务,需要注册账号(https://gitee.com/signup )
2.3 登录码云并创建Git远程仓库
注册完成后就可以使用刚刚注册的邮箱进行登录(https://gitee.com/login )
登录成功后就可以创建Git远程仓库
创建完成后可以查看仓库信息
每个Git远程仓库都会对应一个网络地址,可以点击克隆/下载按钮弹出窗口并点击复制按钮获得这个网络地址
创建的Git远程仓库对应的地址模板为:https://gitee.com/账号/仓库名.git
2.4 邀请其他用户成为仓库成员
前面已经在码云上创建了自己的远程仓库,目前仓库成员只有自己一个人(身份为管理员)。在企业实际开发中,一个项目往往是由多个人共同开发完成的,为了使多个参与者都有权限操作远程仓库,就需要邀请其他项目参与者成为当前仓库的成员。
每日一点点进步
不进则退