【Git】1. Git概述

简介: 【Git】1. Git概述

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


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


性能要优于Subversion、CVS、Perforce、ClearCase等版本控制工具。


一、什么是版本控制


版本控制就是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。其实最重要的就是可以记录文件修改历史记录,从而让用户可以查看历史版本,方便版本切换。


那么为什么要用版本控制,其实是为了更好的团队协作。比如一个项目的代码文件,不止你一个人在写,那么你先提交之后,别人的那份没你的代码,当他再次提交,你的代码就

被覆盖掉了。


二、集中式和分布式


版本控制工具大概可以分为2类:集中式和分布式。


何为集中式?


比如SVN,会有一个单一的集中管理的服务器,保存了所有文件的修订版本。所有参与协同工作的人都通过客户端连接这台服务器,取出最新的文件,或者提交更新文件。


这种系统有个非常大的缺点,那就是中央服务器的单点故障,比如宕机了1小时,那么这一小时里谁都没法提交更新,也就没法协同工作。


何为分布式?


Git这种即为分布式版本控制工具,客户端首先从远程仓库把代码仓库完整的克隆下来到本地库,从而可以在本地进行版本的控制。就算远程服务器挂掉了也可以进行开发,

只是没办法把本地代码推送到远程仓库而已。另外,每个人clone到本地都是一个完整的项目,里面包含了历史记录等,更加安全,再也不怕单点故障问题。


三、git工作机制


git功能强大,但是工作机制并不复杂,毕竟Linus只花了2周时间就一个人开发完了git系统。你说啥?Linus是谁?


林大佬就是linux之父,所以git跟linux系统是一个爸爸。期初在长达10年的时间里,林大佬都是自己手动去合linux的代码的,后来提交代码的人越来越多,自己合实在

太累了。后来有个公司开发了一个版本控制的商业软件,出于人道主义就免费给linux社区使用,只要别破解就行。但是后来还是有个程序员破解了它,使用权被公司收回了,

无奈之下,林大佬只能用C语言开发了这个分布式版本控制系统了。


1268169-20210506225809873-1680957340.png


  • 工作区:就是我们写代码的地方,具体指代码存放的磁盘目录的位置。
  • 暂存区:为了让git能追踪到你在工作区写的代码,要把代码添加到暂存区。
  • 本地库:把暂存区的代码提交到本地库,就会生成对应的历史版本了,这个历史版本是删不掉的。


四、git和代码托管中心


代码托管中心是基于网络服务器的远程代码仓库,一般称为远程库。比如,基于互联网的GitHubGitee,和基于局域网的GitLab


当代码提交到本地库后,就可以推送到远程库了,也就是用git push命令。


五、安装


安装就不说了,打开官网,下载对应系统的最新版本,一路默认安装就行了。

下一章整理git常用命令。

相关文章
|
8月前
|
Linux 项目管理 开发工具
Git项目管理——仓库概述(一)
Git项目管理——仓库概述(一)
72 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类型分支)
161 0
|
数据可视化 容灾 Shell
【Git】概述
【Git】概述
218 0
【Git】概述
|
程序员 Shell 开发工具
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(下)
|
存储 安全 Shell
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
【Gitee学习之路】Git概述&&安装教程&&基本操作指令(上)
|
存储 开发工具 数据库
Git概述(大致介绍)
Git概述(大致介绍)
117 0
Git概述(大致介绍)
|
存储 搜索推荐 JavaScript
Git概述(下)
Git概述(下)
129 0
Git概述(下)