Git概述(大致介绍)

简介: Git概述(大致介绍)

Git 概述

Git 是一个免费的、开源的分布式版本控制系统,可以快速高效地处理从小型到大型的各种项目。


Git 易于学习,占地面积小,性能极快。 它具有廉价的本地库,方便的暂存区域和多个工作流分支等特性。其性能优于 Subversion、CVS、Perforce 和 ClearCase 等版本控制工具。


何为版本控制?

版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。


版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本, 方便版本切换。


为什么需要版本控制?

个人开发过渡到团队协作。



版本控制工具

1.集中式版本控制工具

CVS、SVN(Subversion)、VSS……


   集中化的版本控制系统诸如 CVS、SVN 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。


  这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易。


事分两面,有好有坏。这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。


2.分布式版本控制工具

Git、Mercurial、Bazaar、Darcs……


像 Git 这种分布式版本控制工具,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。


分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:

服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)


Git工作机制

2.png


工作区是写代码的地方,也是代码所存放在磁盘目录的位置。


暂存区是当我们在工作区写了代码后,需要让git知道有这个代码文件,所以需要将我们工作区的代码添加到我们的暂存区,所以命令是git add 文件名。


既然是暂存区,说明我们暂存区的代码是临时存储,那么我们暂存区的代码是可以删掉的,例如此时我们不想要某个代码想去删掉是完全没问题的(包括我们工作区的代码也是可以删除的)


但是当我们的代码提交到我们的本地库的后,此时便会生成我们的历史版本了,并且根本删不掉。


Git 和代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般我们简单称为远程库。


局域网

GitLab


互联网

GitHub(外网)Gitee 码云(国内网站)


相关文章
|
5月前
|
Linux 项目管理 开发工具
Git项目管理——仓库概述(一)
Git项目管理——仓库概述(一)
61 1
|
存储 Java 开发工具
【Java】Java核心 78:Git 教程(1)Git 概述
01.GIT概述 Git是一个分布式版本控制系统,常用于协同开发和版本管理的工具。它可以跟踪文件的修改、记录历史版本,并支持多人协同工作。通过Git,你可以轻松地创建和切换分支、合并代码、回滚修改等操作。 以下是Git一些常用的命令和功能:
|
开发工具 git
[Git]Git概述与安装(二)
[Git]Git概述与安装(二)
|
安全 Linux 开发工具
|
数据可视化 Linux 项目管理
Git开发、发布、缺陷分离模型概述(支持master/develop/feature/release/hotfix类型分支)
Git开发、发布、缺陷分离模型概述(支持master/develop/feature/release/hotfix类型分支)
140 0
|
数据可视化 容灾 Shell
【Git】概述
【Git】概述
198 0
【Git】概述
|
程序员 Shell 开发工具
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
|
存储 安全 Shell
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
|
存储 搜索推荐 JavaScript
Git概述(下)
Git概述(下)
119 0
Git概述(下)
|
存储 安全 Linux
Git概述(上)
Git概述(上)
78 0
Git概述(上)