Git&GitHub 版本控制介绍 |Git介绍


在这里插入图片描述

版本控制

个人开发需要不断的改进和迭代,团队内部需要协作,这样的需求由版本控制工具来满足。 需要明白的是版本控制只是一种思想,而版本控制工具是对这种思想的一种实现。

(1)集中式版本控制工具:CVS、SVN、VSS…
每一个开发人员是一个客户端,文件和版本信息存储在服务器上。缺点是容易出现单点故障:服务器一旦宕机,所有历史数据都会丢失。

(2)分布式版本控制工具:Git、Mercurial、Bazaar、Darcs…
在本地就可以进行版本控制。有效的避免了单点故障。

版本控制工具的功能

版本控制工具有下面几个功能:
(1)协同修改
多人并行不悖的修改服务器端的同一个文件。
(2)数据备份
不仅保存目录和文件的当前状态,还能保存每一个提交过的历史状态。
(3)版本管理
在保存每一个版本的文件信息时要做到不保存重复数据,以节约存储时间,提高运行效率。这方面SVN采用的是增量式管理的方式,而Git采取了文件系统快照的方式。
(4)权限控制
对团队中参与开发的人员进行权限控制;对团队外开发者贡献的代码进行审核(Git独有功能)。
(5)历史记录
查看修改人、修改时间、修改内容、日志信息;将本地文件恢复到某一个历史状态。
(6)分支管理
允许开发团队在工作过程中多条生产线同时推进任务,进一步提高效率。

Git简介

Linux在开发之初源代码来自世界各地,由Linus自己手动汇总并合并代码,这样的工作很繁杂。

2002年BitMover公司出于人道主义授权Linux社区免费试用版本控制系统BitKeeper,但不允许破解。

2005年,开发Samba的Andrew试图破解BitKeeper的协议,被BitMover公司发现后,要收回Linux社区的免费试用权;于是Linus自己用C语言开发了一个分布式版本控制系统—Git,一个月后Linux系统代码由Git管理。

2008年,GitHub上线,jQuery、Ruby、PHP开源软件都把自己的源代码放在GitHub进行托管,如今GitHub上好的项目已经数以万计。

Git的优势

大部分操作在本地完成,不需要联网。
完整性保证。(会对每一次提交的数据进行Hash操作)
尽可能添加数据而不是删除或修改数据。
分支操作非常快捷流畅。
与 Linux 命令全面兼容。

Git的下载与安装

可以去Git官网下载最新版本的git,仅在GitBash中使用就足够了。

下面几张图需要注意,其他直接安装默认值下载就可以了。
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

Git的本地结构

Git在本地存在三个区:

  • 工作区(写代码的地方)
  • 暂存区(临时存储)
  • 本地库(存放历史版本)

在工作区新建一个文件后,可以使用git add将其添加到暂存区,再使用git commit添加到本地库。

Git和代码托管中心

GitHub就是Git的一个代码托管中心,其任务就是维护远程库

  • 在局域网环境下,可以搭建GitLab服务器,作为代码托管中心。
  • 在外网环境下,可以有GitHub和码云作为代码托管中心。

本地卡和远程库的交互方式

团队内部协作:

在这里插入图片描述
跨团队协作:
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_43691058/article/details/106368412
今日推荐