2023.12.4 GIT的概念和组成

目录

1.git的介绍

2.git的历史

开发者:Linus Torvalds

Linux的创始人

 3.git和svn的对比

svn:集中式管理

git:分布式管理

4.git管理的组成结构


1.git的介绍

        git是项目版本管理工具,能自动的将多个版本进行管理存储,类似于快照,多个人共享版本

        git的诞生:分布式项目管理工具,目前整个行业最流行最受欢迎的项目版本管理工具

2.git的历史

开发者:Linus Torvalds

  • Linux的创始人

  • Linux诞生以后,全球很多开发者开发了 很多个版本的Linux,提交给Linus Torvalds

  • Linus Torvalds 将优秀的代码集成在Linux内核中,手动管理所有的代码

  • Linus Torvalds 不喜欢传统的免费CVS等工具,因为这些工具不好用,好用的都收费

  • Linus Torvalds 先选择了一个商业化的工具BitKeeper ,达成协议可以免费使用

  • 于是团队中的一个哥们有个想法:能不能破解这个东西?

  • 被发现了:Linus Torvalds 保证不再破解

  • 到 2005 年的时候,开发 BitKeeper 的商业公司同 Linux 内核开源社区的合作关系结

    束,他们收回了免费使用 BitKeeper 的权力

  • 两周以后,Linus Torvalds 自己用C语言开发了Git,使用了类似于Linux的管理方式

  • Linus Torvalds :将Linux的版本控制切换到Git上

    • Git的开发汲取了其他的版本控制工具的优点,避免了缺点


 

 3.git和svn的对比

svn:集中式管理

 

  • 所有版本的代码都集中在SVN的服务器上

  • 任何一个开发者,都只能连接SVN服务器,下载代码和上传新的版本

  • 集中式:所有的开发都围绕SVN服务器为核心

  • 缺点

    • 必须联网

      • 局域网:还是比较快的,但是回家以后就没办法开发了

        • 在公司下载好

        • 回家开发,只能开发一个版本

        • 回到公司上传这个版本

      • 互联网:特别慢

        • 在任何一个地方连接SVN服务器,进行下载和上传

    • 自己无法自动管理多个版本

    • SVN服务器存在单点故障:假如服务器崩了,所有东西就都没了


 

git:分布式管理

 

 

    • ==去中心化模式==

    • 优点

      • 不需要联网,自己的笔记本就是个本地版本库,直接利用自己的笔记本实现版本的管理

      • 自己可以管理任意多个版本

      • 不需要担心公共的版本库故障,每个人的本地都有版本库

Git的特点

  • 适合于分布式开发,多人可以共同开发,强调个体

  • 公共的版本库服务器的压力不会太大

  • 速度快、更加灵活

  • 任意的开发者之间如果产生冲突也容易解决

  • 不需要联网也可以实现多版本管理


4.git管理的组成结构

 

  • 本地版本控制Git服务器

    • ==工作区【Work Dir】==:就是你开发和修改代码的地方

    • ==暂存区【Index】==:临时存放你即将提交的版本的地方

      • 所有需要保存的版本必须先添加到暂存区

    • ==本地版本仓库【HEAD】==:本地的版本库,实现本地的版本的管理

      • 所有暂存区的版本会被提交到本地版本库

  • ==远程版本仓库==:用于共享项目代码版本

    • GitHub: GitHub: Let’s build from here · GitHub

    • Gitee: Gitee - 基于 Git 的代码托管和研发协作平台

 

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

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

相关文章

行为型剩余的模式

1.中介者模式 package com.jmj.pattern.mediator;public abstract class Mediator {public abstract void constact(String message,Person person); }package com.jmj.pattern.mediator;public class MediatorStructure extends Mediator{private HouseOwner houseOwner;priva…

华为云云绘本第一期:童话奇迹原来是你

点此进入官网,专家1对1:应用身份管理服务OneAccess_华为云IDaaS-华为云

赛捷CRM集成无需API开发:连接营销系统,优化电商用户运营和广告策略

赛捷CRM集成无需API开发:连接营销系统,优化电商用户运营和广告策略 在当前的电商热潮下,企业如何在竞争中脱颖而出,提高用户运营效率和广告策略的精准度,成为了关键性的挑战。赛捷CRM以其无需API开发的集成解决方案&a…

如何看待 Android 面试却是 Java 面试官?

如何看待 Android 面试却是 Java 面试官? 在开始前我有一些资料,是我根据自己从业十年经验,熬夜搞了几个通宵,精心整理了一份「Android资料从专业入门到高级教程工具包」,点个关注,全部无偿共享给大家&…

变配电智能监控系统

变配电智能监控系统是一种能够实时监测电力变压器和配电柜、配电箱运行状态的智能设备。这种系统利用先进的传感器和数据通信技术,能够实时监测电力设备的运行状态,包括电压、电流、温度、湿度等参数,并且能够对这些数据进行处理和分析&#…

CTF特训日记day3

复现一下RWCTF5th shellfind题目 题目描述如下: Hello Hacker. You dont know me, but I know you. I want to play a game. Heres what happens if you lose. The device you are watching is hooked into your Saturday and Sunday. When the timer in the back …

沿着马可·波罗的足迹,看数字云南

刚入行的时候,有位前辈跟我说过一句话:去现场“要像外国人一样去看”,重新审视那些自己可能早已“熟视无睹”的事物。 前不久,我跟随“看见数字云南——云南数字经济媒体探营活动”,奔赴昆明、大理、西双版纳等地&…

多路径传输(MPTCP MPQUIC)数据包调度研究总结

近些年来,以5G和Wifi6为代表的无线通信技术发展迅速,并已经在全世界实现了大规模部署。此外,智能手机等移动设备不断迭代更新,其网络通信能力也持续演进,使得应用同时利用多个不同网卡在多条不同物理链路上&#xff08…

性价比开放式蓝牙耳机推荐哪款、性价比最高的开放式耳机

传统的耳机设计虽然便携,但却可能给一些需要长时间佩戴的用户带来不适。长时间封闭在耳机内可能导致耳朵不透气,甚至引起疼痛。这就是为什么近年来开放式耳机越来越受欢迎的原因。这种耳机设计无需直接插入耳道,采用挂耳的佩戴方式&#xff0…

Python3+selenium自动化测试框架详解

背景 为了更好的发展自身的测试技能,应对测试行业以及互联网行业的迭代变化。自学python以及自动化测试。 虽然在2017年已经开始接触了selenium,期间是断断续续执行自动化测试,因为还有其他测试任务,培训任务要执行… 前期建议大…

W11+Ipv6+可道云+PHPstudy实现私人云盘搭建

W11Ipv6可道云PHPstudy实现私人云盘搭建 一、搭建原因二、搭建过程软件选择服务器环境管理软件私人云盘 可道云搭建小皮面板搭建 三、相关配置程序开机自启远程关机远程开机 四、相关参考 一、搭建原因 工位电脑上一些文件想备份到家里电脑,购买NAS又有点多余&…

solidity实现ERC1155多代币标准

文章目录 1、NFT - 维基百科2、IERC1155MetadataURI3、IERC1155Receiver4、IERC11555、ERC11556、NFT11557、开源地址 1、NFT - 维基百科 ERC-1155 标准于2018年6月由Witek Radomski、Andrew Cooke、Philippe Castonguay、James Therien、Eric Binet及Ronan Sandford提出。此标…

从微软官网下载系统镜像重装的方法

一、制作系统镜像介质U盘 1、在一台能够正常进入系统的电脑中登录以下网址:https://www.microsoft.com/zh-cn/software-download/windows10, 点击立即下载工具。 2、在下载完成后,双击打开,选择为另一台电脑创建安装介质&#xf…

controller能接收到数据有数据但是前端无法显示数据

又是制作系统时遇到的问题。只是想做个查询商品的页面,结果弄了一天,在网上各种查问题,各种解决办法用在我的代码上,换了无数种关键词搜索终于找到了一条成功解决了问题。 问题描述: 事情是这样的:我要写一…

云原生之深入解析Kubernetes策略引擎对比:OPA/Gatekeeper与Kyverno

一、前言 ① Kubernetes 策略 Kubernetes 的 Pod Security Policy,正如其名字所暗示的,仅是针对 Pod 工作的,是一种用来验证和控制 Pod 及其属性的机制。另外 PSP 只能屏蔽非法 Pod 的创建,无法执行任何补救/纠正措施。而 Gatek…

如何将Java条码Dynamsoft Barcode Reader集成到命令行、GUI和Web应用程序中

Dynamsoft Barcode Reader SDK一款多功能的条码读取控件,只需要几行代码就可以将条码读取功能嵌入到Web或桌面应用程序。这可以节省数月的开发时间和成本。能支持多种图像文件格式以及从摄像机或扫描仪获取的DIB格式。使用Dynamsoft Barcode Reader SDK,…

实验案例二:多表查询

1、表联接类型。 表联接类型可以分为内联接.外联接和交叉联接等。 1.内联接。 内联接〈 inner join)是最常用的-一-种联接方式,只返回两个数据集合之间匹配关系的行,将位于两个互相交叉的数据集合中重叠部分以内的数…

ROS第一个程序——helloworld

目录 一、工作空间的创建 1.创建工作空间并初始化 2.进入 src 创建 ros 包并添加依赖 二、C实现helloworld C源码实现 编辑 ros 包下的 Cmakelist.txt文件 进入工作空间目录并编译 执行 三、python实现helloworld 进入 ros 包添加 scripts 目录并编辑 python 文件 …

推荐6个AI相关开源项目

1.GPT 学术优化 - 一个专注优化论文的 AI 工具 🌐开源地址:https://github.com/binary-husky/gpt_academic 🖥️体验地址:https://huggingface.co/spaces/qingxu98/gpt-academic 📄该工具可以为你的论文提供一键润色…

flink安装与配置-脚本一键安装(超简单)

文章目录 前言使用shell脚本一键安装1. 复制脚本2. 增加执行权限3. 执行脚本4. 加载用户环境变量5. 浏览器访问 总结 前言 本文介绍了使用shell脚本一键安装和配置Apache Flink单机版的方法。通过复制并执行提供的安装脚本,可以自动下载、安装和配置Flink。脚本会检…