你可以不用Git,但不能不会Git(一)概述
创始人
2024-05-07 13:06:07
0

目录

一.什么是Git

二.为什么要使用Git 

三.Git和SVN对比

四.Git工作流程

五.Git下载与安装 


一.什么是Git

Git历史 很多人都知道,林纳斯·托瓦兹在1991年创建了开源的Linux,从此,Linux系统不断发展,已经成为最大的服务器系统软件了。然后全世界的开源贡献者都将修改或实现的功能提交给林纳斯·托瓦兹,这样林纳斯·托瓦兹就得手动的去一个一个匹配需要改动的地方,所以他花了2个星期的时间用C写了Git。(呵呵,这就是大佬吧)

Git是什么?

Git是一种代码托管技术。在开发中,Git是一种代码托管技术,很多代码托管平台也是基于Git来实现的。Git可以帮我们做到很多的事情,比如代码的版本控制,分支管理等。

注意: 我们可以把Git理解成是一个开源的分布式版本控制系统,用于 敏捷高效地处理任何或小或大的项目。正是因为有了Git的存在,现在很多工作才可以变得相对轻松。

二.为什么要使用Git 

什么是版本控制系统 你可以把一个版本控制系统(缩写VCS)理解为一个“数据库”,在需 要的时候,它可以帮你完整地保存一个项目的快照。当你需要查看 一个之前的快照(称之为“版本” )时,版本控制系统可以显示出当 前版本与上一个版本之间的所有改动的细节。

想法:

比如在写毕业论文时,因为我们怕在原来的基础改错了东西,没法恢复,所以,我们可能会有多个毕业论文的文件。而我们写代码的时候本身就是 「多人协作」的,修改是无法避免的,我们不希望有多个文件 的产生,又希望能够记录每次更改的内容。

 这个软件用起来就应该像这个样子,能记录每次文件的改动:

注意: 结束了手动管理多个“版本”的史前时代,进入到版本控制的20世纪。

三.Git和SVN对比

Git支持离线工作。SVN必须联网才能正常工作。

SVN集中式

集中式版本控制系统需要找一个服务器作为大本营,所有的代码都需要提交到服务器上进行统一的管理。当你需要对代码进行改动时,需要先从服务器上下载一份拷贝,修改完成之后,还需要上传 回服务器。

SVN优缺点

优点:

  1. 管理员也可以轻松掌控每个开发者的权限。
  2. 代码一致性非常高。
  3. 适合开发人数不多的项目开发。

缺点:

  1. 服务器压力太大,数据库容量暴增。
  2. 如果不能连接到服务器上,基本上不可以工作,看上面第二步,如果服务器不能连接上,就不能提交,还原,对比等等。

Git分布式

在分布式版本控制系统中,大家都拥有一个完整的版本库,不需要联网也可以提交修改,所以中心服务器就显得不那么重要了。 

注意: Git记录版本历史只关心文件数据的整体是否发生变化。Git不保存文件内容前后变化的差异数据。

Git优缺点

优点:

  1. 适合分布式开发,强调个体。
  2. 公共服务器压力和数据量都不会太大。
  3. 速度快、灵活。
  4. 任意两个开发者之间可以很容易的解决冲突。
  5. 离线工作。

缺点:

  1. 学习周期相对而言比较长。
  2. 不符合常规思维。
  3. 易学难精

四.Git工作流程

协作必须有一个规范的工作流程,让大家有效地合作,使得项目井井有条地发展下去。
 

四个工作区域

Workspace: 工作区,就是你平时存放项目代码的地方

Index / Stage: 暂存区,用于临时存放你的改动,事实上它只是 一个文件,保存即将提交到文件列表信息 

Repository: 仓库区(或版本库),就是安全存放数据的位置,这里面有你提交到所有版本的数据。其中HEAD指向最新放入仓库的版本

Remote: 远程仓库,托管代码的服务器,可以简单的认为是你项 目组中的一台电脑用于远程数据交换

********************************************************************************************************

暂存区就相当于下面的广场货物先放到广场,当累积到一定数量时再一起放入仓库中。要不然仓库中的版本太过零碎频繁。 

工作流程

Git的工作流程一般是这样的:

  1. 在工作目录中添加、修改文件;
  2. 将需要进行版本管理的文件放入暂存区域;
  3. 将暂存区域的文件提交到git仓库。

五.Git下载与安装 

官网:Git

 官网下载速度比较慢,所以我就直接从腾讯电脑管家里下了,我下的版本是2.39.0.2-64-bit。无脑安装即可,安装之后可以看到鼠标右键会出现相关快捷键,Git Gui Here和Git Bash Here。

相关内容

热门资讯

监控摄像头接入GB28181平... 流程简介将监控摄像头的视频在网站和APP中直播,要解决的几个问题是:1&...
Windows10添加群晖磁盘... 在使用群晖NAS时,我们需要通过本地映射的方式把NAS映射成本地的一块磁盘使用。 通过...
protocol buffer... 目录 目录 什么是protocol buffer 1.protobuf 1.1安装  1.2使用...
在Word、WPS中插入AxM... 引言 我最近需要写一些文章,在排版时发现AxMath插入的公式竟然会导致行间距异常&#...
【PdgCntEditor】解... 一、问题背景 大部分的图书对应的PDF,目录中的页码并非PDF中直接索引的页码...
Fluent中创建监测点 1 概述某些仿真问题,需要创建监测点,用于获取空间定点的数据࿰...
educoder数据结构与算法...                                                   ...
MySQL下载和安装(Wind... 前言:刚换了一台电脑,里面所有东西都需要重新配置,习惯了所...
修复 爱普生 EPSON L4... L4151 L4153 L4156 L4158 L4163 L4165 L4166 L4168 L4...
MFC文件操作  MFC提供了一个文件操作的基类CFile,这个类提供了一个没有缓存的二进制格式的磁盘...