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

Git是一个开源的分布式版本控制系统,是目前世界上最先进,最流行的版本控制系统,可以快速高效地处理从很小到非常大的项目版本管理

Git的特点

项目越大越复杂,协同开发者越多,越能体现出Git的高性能和高可用性

Git的特性

  • 直接记录快照,而非差异比较
  • 近乎所有操作都是本地执行

Git与SVN的差异比较

传统的版本控制系统(例如SVN)是基于差异的版本控制,他们存储的是一组基本文件和每个文件随时间逐步累计的差异

  • 优点:节省硬盘空间
  • 缺点:耗时,效率低(在每次切换版本的时候,都需要在基本文件的基础上,应用每个差异,从而生成目标版本对应的文件)

Git的记录快照

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

  • 优点:版本切换非常快,因为每个版本都是完整的文件快照,切换版本时直接恢复目标版本的快照即可
  • 特点:空间换时间
  • 缺点:占用磁盘空间较大

在Git中的绝大多数操作都只需要访问本地文件和资源,一般不需要来自网络上其他计算机的信息

特性:

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

Git中的三个区域

工作区:处理工作的区域

暂存区:已完成的工作的临时存放区域,等待被提交

Git仓库:最终的存放区域

Git的三种状态

已修改:修改了文件,但还没将修改的结果放到暂存区

已暂存:对已修改文件的当前版本做了标记,使之包含在下次提交的列表中

已提交:文件已经安全保存到本地的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-09-13 11:38:53  更:2022-09-13 11:39:08 
 
开发: 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/18 15:02:30-

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