当前位置: 首页 > news >正文

Git简介

Git概述

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

  • 特点
    Git易于学习,占地面积小,性能极快。它具有廉价的本地库(在本地的磁盘) ,方便的暂存区域和多个工作流分支等特性。其性能优于Subversion、CVS、Perforce和ClearCase等版本控制工具。
  • 何为版本控制
    版本控制是一种记录文件内容变化,以便将来查阅特定版本修订情况的系统。版本控制其实最重要的是可以记录文件修改历史记录,从而让用户能够查看历史版本
    官网链接
    Git

版本控制工具

集中式版本控制工具
CVS、SVN(Subversion)、VSS…
集中化的版本控制系统诸如CVS、SVN 等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。
这种做法带来了许多好处,每个人都可以在一定程上看到项目中的其他人正在做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易。
事分两面,有好有坏。这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时,那么在这一小时内,谁都无法提交更新,也就无法协同工作。
分布式版本控制工具
Git、Mercurial、Bazaar、Darcs…
像Git这种分布式版本控制工,客户端提取的不是最新版本的文件快照,而是把代码仓库完整地镜像下来(本地库)。这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库行恢复。因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份。
分布式的版本控制系统出现之后,解决了集中式版本控制系统的缺陷:1.服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)←2.每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)
区别对比

对比维度集中式版本控制分布式版本控制
仓库架构1 个中央仓库(唯一存储源)+ 多个本地 “工作副本”(无完整历史)每个开发者本地有完整仓库(含全量历史)+ 1 个可选 “中央仓库”(用于协作同步)
离线能力完全依赖中央仓库:离线无法提交、查看历史、创建分支完全支持离线:本地可提交、查看历史、合并分支,联网后同步即可
分支机制分支在中央仓库创建,本地需 “拉取分支” 才能操作;分支操作(创建 / 删除)需联网,且可能影响团队分支在本地仓库创建,操作(创建 / 删除 / 切换)秒级完成;本地分支不影响他人,同步到中央仓库才可见
提交逻辑提交直接推送到中央仓库,“提交即公开”;若中央仓库故障,无法提交先 “本地提交”(历史存本地),再 “远程推送”(同步到中央仓库);提交不依赖远程可用性
冲突处理冲突只能在 “推送代码到中央仓库时” 触发,且需实时解决(否则无法提交)冲突可在 “本地合并时” 提前解决,也可在 “推送前” 与远程仓库对比解决,灵活性更高
数据安全性中央仓库是单点风险:若中央仓库损坏且无备份,所有历史记录丢失多节点备份:每个本地仓库都是完整备份,中央仓库损坏可从任意开发者本地恢复
网络依赖几乎所有操作(提交、拉取、分支、历史查询)都需联网访问中央仓库仅 “同步(拉取 / 推送)” 需联网,其他操作(提交、分支、历史)本地完成,对网络要求低
适用团队规模小型团队(10 人内)、协作频率低、网络稳定的场景中大型团队、跨地域协作(如远程团队)、网络不稳定的场景

Git以及Github发展概述1

诞生背景与技术目标
Git 由 Linus Torvalds 于 2005 年 开发,初衷是为高效管理 [[Linux]]内核开发的庞杂代码。此前版本控制系统(如 CVS、SVN)存在性能瓶颈和集中式架构缺陷,无法满足分布式协作需求。
核心设计:采用分布式版本控制(DVCS),每个开发者拥有完整的代码仓库副本,支持离线操作、高速分支管理和强数据完整性(通过 SHA-1 哈希校验)。
技术演进与普及

[!info] Linux与Git及Github的联系
Git 的诞生直接源于 [[Linux]] 内核的开发需求,GitHub 作为基于 Git 的代码托管平台,成为连接 Git 和 Linux 生态的桥梁,三者都是**林纳斯・托瓦兹(Linus Torvalds)**开发的开源项目

Git的工作机制

Git由工作区,暂存区,本地库三个区组成

[!tip]
按工作区->暂存区->本地库的顺序上传到库里

Git 与代码托管中心

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

Git安装

教学视频


  1. 该内容来源于网络 ↩︎

http://www.jsqmd.com/news/177763/

相关文章:

  • YOLOFuse支持TensorFlow吗?目前仅基于PyTorch生态
  • tquery.dll文件损坏丢失找不到 打不开程序 下载方法
  • YOLOFuse中文教程上线:帮助更多国内开发者快速上手
  • YOLOFuse和百度网盘直链下载助手有关系吗?无任何关联请勿混淆
  • YOLOFuse服务器选型指南:风冷还是水冷?
  • 计算机毕业设计springboot医院挂号管理系统设计与实现 基于Spring Boot的医院在线预约挂号系统开发与实践 Spring Boot框架下医院挂号管理平台的设计与实现
  • 计算机毕业设计springboot校园管理系统 基于Spring Boot的高校综合管理系统开发与实现 Spring Boot框架下的校园信息化管理平台设计
  • YOLOFuse训练脚本train_dual.py参数详解及调优建议
  • YOLOFuse开源镜像上线:基于Ultralytics YOLO,支持双模态目标检测
  • 计算机毕业设计springboot“阴阳师”游戏玩家社区设计与实现 基于Spring Boot框架的“阴阳师”游戏爱好者社区开发与应用 Spring Boot驱动下的“阴阳师”游戏玩家互动社区构建与实
  • YOLOFuse与旷视Face++比较:通用检测更强
  • YOLOFuse标签复用机制:只需为RGB图像标注即可完成双流训练
  • YOLOFuse推理脚本infer_dual.py使用说明:可视化结果查看路径揭秘
  • YOLOFuse与蔚来ET7集成:激光雷达+红外互补
  • 双流融合检测新突破!YOLOFuse镜像一键部署,提升低光烟雾环境下mAP达94.7%
  • YOLOFuse仅上传RGB图像怎么办?临时解决方案提供参考
  • YOLOFuse是否可用于移动端部署?需进一步轻量化剪枝
  • Git远程协作
  • cloudflare中wrangler支持的d1等命令有哪些
  • YOLOFuse镜像内置LLVIP数据集:可直接启动训练无需额外下载
  • YOLOFuse项目页面显示‘你尝试预览的文件可能有害’?GitHub渲染机制误判
  • 2026手持三维扫描仪十大品牌权威排名:洞察用户需求与行业变革 - 匠子网络
  • YOLOFuse PyTorch版本信息:v2.0.1+cu118 稳定可靠
  • YOLOFuse可用于毕业设计课题?强烈推荐多模态方向选题
  • YOLOFuse模型压缩潜力分析:中期融合结构利于裁剪
  • 2026新年选购指南:高精度三维扫描仪十大品牌权威排行榜 - 匠子网络
  • YOLOFuse中期融合为何被推荐?参数量少、速度快、精度均衡
  • YOLOFuse团购优惠活动:实验室批量采购折扣
  • Typora免费版安装
  • YOLOFuse阿里云市场入驻:国内用户便捷购买