Git简单理解

Git 概述

Git 是一个免费的开源的,分布式版本控制系统,可以快速高效的处理从小型到大型的各种项目
Git占地面积小,性能极快,具有廉价的本地库,方便的暂存区和多个工作流分支等特性

版本控制

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

集中式版本控制工具

全部都基于一个单一的集中管理的服务器,保存所有文件的修订版本
在这里插入图片描述

好处:每个人都可以在一定程度上看到项目中的其他人正在做些什么,而管理员也可以轻松掌握每个开发者的权限,并且管理一个集中化的版本控制系统,要远比在各个客户端上维护本地数据来的容易

缺点:如果这个单一的集中管理的服务器出现了单点故障,那么在故障的这段时间内,谁都无法提交更新,无法进行版本控制,也无法协同工作

分布式版本控制

Git
客户端提取的不是最新版本的文件快照,而是把代码仓库完整的镜像下来(本地库),这样任何一处协同工作用的文件发生故障,事后都可以用其他客户端的本地仓库进行恢复,因为每个客户端的每一次文件提取操作,实际上都是一次对整个文件仓库的完整备份
在这里插入图片描述

分布式的版本控制解决了集中式版本控制的缺陷:
1.服务其断网的情况下也可以进行开发(引文版本控制是在本地进行的)
2.每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)

为什么需要版本控制

从个人开发过渡到团队合作

Git 工作机制

工作区就是存放代码的文件夹
工作区和暂存区可以单独进行修改,但是本地库中的不能单独修改,只能生成另一个版本

在这里插入图片描述

代码托管中心

代码托管中心是基于网络服务器的远程代码仓库,一般被称为远程库

局域网

GitLab

互联网

GitHub
Gitee

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/13604.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

低耦合双写一致性方案-使用canal+MQ

需求:继上一篇使用xxljob实现数据的全量同步到es后,当数据库中新增、删除、修改数据时,应该对es中的对应索引库实现增量同步。 本文介绍了2种双写一致性方案,对其中使用MQ的方案进行了实现。 1. 方案设计 1.1 数据一致性问题分析…

2024.5.21欧洲商会网络安全大会(上海)

本次安策将将参加超越 2024 年网络安全大会:驾驭数字前沿大会(上海),2024年5月21日,期待和欢迎新老朋友在大会上会面和交流。 时间 2024-05-21 |14:00 - 16:30 场地: 上海瑞士大酒店 地址: 3rd Floor, Davo…

iOS 17.5 release notes

文章目录 iOS 17.5 更新恢复了多年前删除的一些图片新增彩虹壁纸欧盟用户可直接从网站下载应用新增了追踪通知改进 Apple News图书应用"阅读目标"设计更新颜色匹配的播客小部件Web浏览器安全权限的访问下一代“Beats Pill”扬声器在iOS 17.5代码中得到确认店内Vision…

【C++】 单例设计模式的讲解

前言 在我们的学习中不免会遇到一些要设计一些特殊的类,要求这些类只能在内存中特定的位置创建对象,这就需要我们对类进行一些特殊的处理,那我们该如何解决呢? 目录 1. 特殊类的设计1.1 设计一个类,不能被拷贝&#xf…

人际关系与情景模拟

面试中的同事 1、着眼合作多理解 2、立足长远多承担 3、分工协作多沟通 4、相互学历促成长 面试中的领导 1、尊重领导权威 2、适应领导风格 3、服从领导安排 4、请示领导意见 5、完成领导任务 6、汇报工作结果 面试中的下属(面试考的很少,毕…

@Configuration注解使用详解【记录】

Configuration注解 1、主要作用: 标识配置类:Configuration用于标识一个类是配置类,这是Spring Boot应用程序中的关键组件之一,用于定义和管理Bean的创建和配置(用于取代bean.xml配置文件注册bean对象)。通…

Android Studio 与 Gradle 及插件版本兼容性

Android Studio 开始新项目时,会自动创建其中部分文件,并为其填充合理的默认值。 项目文件结构布局: 一、Android Gradle 及插件作用: Android Studio 构建系统以 Gradle 为基础,并且 Android Gradle 插件 (AGP) 添加…

代码随想录阅读笔记-动态规划【不同路径 II】

题目 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为“Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为“Finish”)。 现在考虑网格中有障碍物。那么从左上角到右…

全球视频会议软件巨头Zoom,率先引入后量子端到端加密

5月21日,Zoom Video Communications公司宣布,后量子端到端加密(E2EE)现已面向全球推出,适用于Zoom Workplace。目前,Zoom已将该功能加入Zoom Meetings,稍后将扩展至Zoom Phone和Zoom Rooms。 图…

视频批量裁剪助手:一键式高效缩小视频尺寸,极速提升工作效率的必备神器!

视频已经成为我们日常生活和工作中不可或缺的一部分。无论是个人vlog、企业宣传片,还是教学视频、广告素材,视频都承载着大量的信息和情感。然而,很多时候,我们手中的视频尺寸并不符合我们的需求,这时,一款…

He3DB MySQL计算下推优化设计

前言 计算下推是数据库优化器优化查询性能的一种常见手段,早期的数据库系统提及的计算下推一般是指谓词下推,其 理论源自关系代数理论。 2000 年以后,随着 Oracle RAC 的盛行以及一众开源分布式数据库的崛起,存算分离的概 念逐步…

Denodo 数据虚拟化

Denodo是一家专注于数据虚拟化领域的软件公司,其核心产品Denodo Platform提供了一套全面的数据集成和数据服务解决方案。以下是关于Denodo的介绍、工作原理、应用场景以及在不同行业的应用比较: Denodo介绍 Denodo Platform通过数据虚拟化技术&#xf…

前端常用网站合集

常用网站 Node.js:https://nodejs.cn/Npm:https://www.npmjs.com/MDN:https://developer.mozilla.org/zh-CN/前端兼容性自查工具:https://caniuse.com/Vue3:https://cn.vuejs.org/Vue2:https://v2.cn.vuej…

Linux中的正则表达式

在说正则表达式之前再加几个小知识 1、输出重定向: 标准输出:是将信息输出在终端上 标准错误输出:在执行命令的过程中所产生的错误信息也是输出在终端上的 标准输出:是从键盘输入的 1.1、标准输出重定向 作用:将本来要…

/etc/passwd与/etc/group内容详解

/etc/passwd 在Linux系统中,/etc/passwd是一个文本文件,用于存储系统中的用户账号信息。该文件的每一行代表一个用户账号,包含以下七个字段,每个字段由冒号分隔: 1. 用户名(Username)&#xf…

k8s 声明式资源管理

一、资源配置清单的管理 1.1 查看资源配置清单 声明式管理方法: 1.适合于对资源的修改操作 2.声明式资源管理方法依赖于资源配置清单文件对资源进行管理 资源配置清单文件有两种格式:yaml(人性化,易读),j…

Flink 调度源码分析4:Physical Slot 分配过程

Flink 调度源码分析1:拓扑图创建与提交过程 Flink 调度源码分析2:调度过程 Flink 调度源码分析3:Shared Slot 分配策略 Flink 调度源码分析4:Physical Slot 分配过程 1 整体过程 在 SlotSharingExecutionSlotAllocator.allocate…

【EXCEL_VBA_实战】两组数据比对是否一致(字符串数组)

工作背景:比对两组数据是否一致(位置非一一对应) 思路构建:两组数据转换为两组字符串数组,比对所包含元素是否相同 问题点:A数组的第一个元素不一定与B数组的第一个元素对应,此时无法通过公式…

es数据备份和迁移Elasticsearch

Elasticsearch数据备份与恢复 前提 # 注意: 1.在进行本地备份时使用--type需要备份索引和数据(mapping,data) 2.在将数据备份到另外一台ES节点时需要比本地备份多备份一种数据类型(analyzer,mapping,data,template) …

【Python快速上手(二十六)】- Python3网络编程(下)

目录 Python快速上手(二十六)- Python3网络编程(下)Python3 网络编程4. HTTP 编程4.1 HTTP 客户端4.2 HTTP 服务器 5. 网络协议处理5.1 URL 处理5.2 FTP 客户端 6. 实际应用案例6.1 网络爬虫6.2 聊天程序 7. 总结 Python快速上手&…