IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> git的初步简单介绍 -> 正文阅读

[开发工具]git的初步简单介绍

git其实就是一款版本控制系统,该博客就是简单介绍一下什么是git以及git的相关理论


前言:版本控制系统

版本控制软件提供完备的版本管理功能,用于存储、追踪目录(文件夹)和文件的修改历史。版本控制软件的最高目标,是支持软件公司的配置管理活动,追踪多个版本的开发和维护活动,及时发布软件。

什么是版本控制系统

版本控制软件用于记录文件变化,以便将来查阅特定版本修订情况的系统,因此也称为"版本控制系统"

通俗理解就是把手工管理文件版本的方式,改为软件管理文件的版本,这个负责管理文件版本的软件就叫做“版本控制软件”

版本控制系统优点

  • 操作简便:使用简单的指令即可使用
  • 易于对比:能够方便地比较文件的变化细节,从而查找出导致问题的原因
  • 易于回溯:记录了每个时间点的修改,可以轻松返回某个版本
  • 不易丢失: 可以找回误删文件
  • 协助方便: 提供分支功能,可以轻松实现多人协作开发一个项目

版本控制系统的三种类型

本地版本控制系统

单机运行,使维护文件版本的操作工具化

特点缺点
使用软件记录文件的不同版本,提高了工作效率,降低了手动维护版本的出错率1.单机运行,不支持多人协作开发
2.版本数据故障后,所有历史更新记录会丢失

集中化版本控制系统

联网运行,支持多人协作开发。但是性能差,用户体验不好。

特点优点缺点
基于服务器,客户端的运行模式:
1.服务器保存文件的所有更新记录
2.客户端只保留最新的文件版本
联网运行,支持多人协作开发1.不支持离线提交版本更新
2.中心服务器崩溃后,所有人无法正常工作
3.版本数据库故障后,所有历史记录会丢失

分布式版本控制系统

联网运行,支持多人协作开发,性能相比集中化版本控制系统更加优秀,用户体验好

特点优点
基于服务器,客户端的运行模式:
1.服务器保存文件的所有更新版本
2.客户端是服务器的完整备份,并不是只保留文件的最新版本
1.联网运行,支持多人协作开发
2.客户端断网后支持离线本地提交版本更新
3.服务器故障或损坏后,可使用任何一个客户端的备份进行恢复

Git

开源的分布式版本控制系统,目前世界上最先进,流行的版本控制系统。可以快速高效地处理各种规模的项目版本管理。
他的强大之处就是项目越大越复杂,协助者越多。就越能体验git的高性能和高可用性

git的特性

git的快速高效主要依赖这两个特性:

1.直接记录快照,而非差异比较

差异比较
传统的版本控制系统(如SVN)是基于差异的版本控制,存储的是一组基本文件和每个文件随着时间逐步积累的差异
优点:节省磁盘空间
缺点:耗时,效率低

git快照
在原有的文件版本的基础上重新生成一份新的文件,类似备份,为了效率,如果文件没有修改,git就不再重新存储该文件,而是保留一个连接指向之前的存储文件

2.近乎所以操作都是本地执行

在git绝大部分操作只需要访问本地文件和资源,一遍不需要来自网络上其他计算机的信息

特性
断网后依旧可以在本地对项目进行版本管理
联网后,把本地修改的记录同步到云端服务器即可

git三个区域

使用git管理的项目,拥有三个区域

  • 工作区:处理工作的区域
  • 暂存区 :已完成的工作的临时存放区域,等待被提交
  • Git仓库:最终的存放区域

在这里插入图片描述

git工作流程

步骤
1.在工作区中修改文件
2.将你想要下次提交的更改进行暂存
3.提交更新,找到暂存区的文件,将快照永久性存储到Git仓库

在这里插入图片描述

工作区中文件的4种状态

在这里插入图片描述

注意
工作区的文件被修改了,但还没有放在暂存区,就是已修改状态
如果文件已修改并放入暂存区,就属于已暂存状态
如果Git仓库中保存特定版本的文件,就属于已提交状态

Git操作的终极结果:让工作区中的文件都处于"未修改"的状态


该博客就讲到git基本理论,下篇讲解一些git的基本使用(咕咕)~

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-05-11 16:37:47  更:2022-05-11 16:38:21 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 5:21:10-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码