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

为什么需要 git 和 相关的小知识

为什么需要git和相关的小知识

先看一个实际需求,引出Git

问题: 公司五一活动计划

● 先说一个最简单的情况,比如你做了公司五一活动计划书(如图)

在这里插入图片描述

解决方案: 版本管理工具(Git)

一句话: Git 是目前最流行的分布式版本控制软件

Git 是怎么来的?

Git 之父:李纳斯·托沃兹(Linus Benedic Torvalds)1969、芬兰

Git 小故事

  1. Linux 内核开源项目有着为数众广的参与者, 绝大多数的Linux 内核维护工作, 都花在了提交补丁、保存归档的繁琐事务上(1991-2002 年间)。到2002 年, 整个项目组开始启用一个专有的分布式版本控制系统BitKeeper 来管理和维护代码

  2. 到了2005 年, 开发BitKeeper 的商业公司同Linux 内核开源社区的合作关系结束,他们收回了Linux 内核社区免费使用BitKeeper 的权力。(Linux 社区有好事者,破解BitKeeper, 也让BitKeeper 恼火.)

  3. 自己动手丰衣足食, Linus Torvalds 用2 周,开发出一套版本控制系统, 也是后来的Git

  4. Git 是目前世界上最先进的分布式版本控制系统, 免费、开源

版本管理

一句话: 在开发的过程中用于管理对文件、目录或工程等内容的修改历史,方便查看历史记录,备份以便恢复以前的版本的软件工程技术

可以完成哪些功能?

  1. 实现跨区域多人协同开发

  2. 追踪和记载一个或者多个文件的历史记录

  3. 组织和保护你的源代码和文档

  4. 统计工作量

  5. 并行开发、提高开发效率

  6. 跟踪记录整个软件的开发过程

  7. 减轻开发人员负担,节省时间,同时降低人为错误

主流版本控制工具/软件

  1. Git

  2. SVN(Subversion)

  3. CVS(Concurrent Versions System)

  4. VSS(Micorosoft Visual SourceSafe)

  5. TFS(Team Foundation Server)

  6. Visual Studio Online

版本控制分类

本地版本控制

本地版本控制
记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS

示意图

在这里插入图片描述

集中版本控制

● 介绍

  1. 所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改

  2. 用户的本地只有自己以前所同步的版本,如果不连网的话,用户就看不到历史版本,也无法切换版本

  3. 所有数据都保存在单一的服务器上,如果这个服务器会损坏(有很大的风险), 这样就会丢失所有的数据,需要定期备份

  4. 代表产品:SVN、CVS、VSS

● 示意图

在这里插入图片描述

分布式版本控制

  1. 所有版本信息仓库全部同步到本地的每个用户

  2. 可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push 到相应的服务器或其他用户那里。

  3. 每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据

  4. 更加安全, 不会因为服务器损坏或者网络问题,造成不能工作的情况

  5. 代表软件: Git

示意图

在这里插入图片描述

Git VS SVN

SVN

  1. SVN 是集中式版本控制系统,版本库是集中放在中央服务器的,而工作的时候,用的都
    是自己的电脑,所以首先要从中央服务器得到最新的版本
  2. 完成工作后,需要把自己的代码送到中央服务器。集中式版本控制系统是必须联网才能
    工作

Git

  1. Git 是分布式版本控制系统,每个人的电脑就是一个完整的版本库,工作的时候不需要联网了,因为版本都在自己电脑上。
  2. 协同的方法说明:比如自己在电脑上改了文件A,其他人也在电脑上改了文件A,这时,你们两之间只需把各自的修改推送给对方,就可以互相看到对方的修改了。Git 可以直接看到更新了哪些代码和文件

Git 下载&安装

官网

  1. 地址: https://git-scm.com/

  2. 下载版本: Git-2.33.0.2-64-bit.exe

  3. 下载慢,可以到镜像下载: http://npm.taobao.org/mirrors/git-for-windows/

卸载

  1. 说明:如果安装过,可以卸载和老师版本保持一致
  2. 卸载步骤
  3. 到windows 的应用和功能,到的git, 卸载即可(如图

在这里插入图片描述

检查环境变量, 如果有和Git 相关的,删除即可

安装

  1. 说明:直接下一步即可,建议安装到非系统盘, 比如d:\

  2. 细节:安装路径不要带中文、空格、特殊字符

  3. 验证安装是否成功

点击右键如图

win10直接右击就可以
在这里插入图片描述

win11就需要

在这里插入图片描述

就可以看到了

在这里插入图片描述

Git 资料

Git 大全

  1. 地址: https://gitee.com/all-about-git
  2. Git 常用命令
    仓库https://gitee.com/all-about-git#%E4%BB%93%E5%BA%93
    配置https://gitee.com/all-about-git#%E9%85%8D%E7%BD%AE
    增加/ 删除文件https://gitee.com/all-about-git#%E5%A2%9E%E5%8A%A0%E5%88%A0%E9%99%A4%E6%96%87%E4%BB%B6
    代码提交https://gitee.com/all-about-git#%E4%BB%A3%E7%A0%81%E6%8F%90%E4%BA%A4
    分支https://gitee.com/all-about-git#%E5%88%86%E6%94%AF
    标签https://gitee.com/all-about-git#%E6%A0%87%E7%AD%BE
    查看信息https://gitee.com/all-about-git#%E6%9F%A5%E7%9C%8B%E4%BF%A1%E6%81%AF
    远程同步https://gitee.com/all-about-git#%E8%BF%9C%E7%A8%8B%E5%90%8C%E6%AD%A5

Git 互动学习

地址: https://oschina.gitee.io/learn-git-branching/

相关文章:

为什么需要 git 和 相关的小知识

为什么需要git和相关的小知识 先看一个实际需求,引出Git 问题: 公司五一活动计划 ● 先说一个最简单的情况,比如你做了公司五一活动计划书(如图) 解决方案: 版本管理工具(Git) 一句话: Git 是目前最流行的分布式版本控制软件 Git 是怎么来的? Git…...

(详解)vue中实现主题切换的三种方式

目录 一、背景 二、实现思路 方法1:定义全局的CSS变量 方法2:切换已定义好的css文件 方法3:切换顶级CSS类名 (需使用css处理器,如sass、less等) 一、背景 在我们开发中我们会遇到像是需要切换程序风格、主题切换啦这种应用场景。 参考大佬…...

英国皇家植物园采用机器学习预测植物抗疟性,将准确率从 0.46 提升至 0.67

内容一览:疟疾是严重危害人类生命健康的重大传染病,研究人员一直在致力于寻找新的植物源性抗疟疾化合物,以研发相关药物。近期英国皇家植物园利用机器学习 算法 有效预测了植物抗疟性,该研究成果目前已发表在《Frontiers in Plant…...

基于Locust实现MQTT协议服务的压测脚本

一、背景简介 业务背景大概介绍一下,就是按照国标规定,车辆需要上传一些指定的数据到ZF的指定平台,同时车辆也会把数据传到企业云端服务上,于是乎就产生了一些性能需求。 目前我们只是先简单的进行了一个性能场景的测试&#xf…...

AURIX TC3XX Cached PFLASH与Non-Cached PFLASH的区别

Cached ? Non-Cached? 在阅读TC3XX的用户手册时,在内存映射表中,有两个segment都是Program Flash,而且大小都一样是3M,一个是segment 8 另一个是segment10 这难免让人产生疑惑,二者区别在哪? …...

uniapp开发小程序-显示左滑删除效果

一、效果图&#xff1a; 二、代码实现&#xff1a; <template><view class"container"><view class"myorderList"><uni-swipe-action><uni-swipe-action-item class"swipe-action-item" :right-options"option…...

FPGA 的数字信号处理:Verilog 实现简单的 FIR 滤波器

该项目介绍了如何使用 Verilog 实现具有预生成系数的简单 FIR 滤波器。 绪论 不起眼的 FIR 滤波器是 FPGA 数字信号处理中最基本的模块之一&#xff0c;因此了解如何将具有给定抽头数及其相应系数值的基本模块组合在一起非常重要。因此&#xff0c;在这个关于 FPGA 上 DSP 基础…...

使用粒子群优化算法(PSO)辨识锂电池二阶RC模型参数(附MATLAB代码)

目录 一、原理部分 二、代码详解部分 三、结果及分析 一、原理部分 PSO算法由美国学者于 1995 年提出&#xff0c;因其算法简单、效果良好&#xff0c;而在很多领域得到了广泛应用。该算法的起源是模拟鸟群的觅食过程&#xff0c;形成一种群体智能搜索算法。 其核心是&#…...

如何利用地面控制点实现倾斜摄影三维模型数据的几何坐标变换和纠正?

如何利用地面控制点实现倾斜摄影三维模型数据的几何坐标变换和纠正&#xff1f; 倾斜摄影是一种在空中拍摄地表物体的技术&#xff0c;可以获得高分辨率、高精度的三维模型数据&#xff0c;广泛应用于城市规划、建筑设计、土地管理等领域。然而&#xff0c;由于航拍时无法避免姿…...

设计规则之里氏替换原则

tip: 作为程序员一定学习编程之道&#xff0c;一定要对代码的编写有追求&#xff0c;不能实现就完事了。我们应该让自己写的代码更加优雅&#xff0c;即使这会费时费力。 相关规则&#xff1a; 推荐&#xff1a;体系化学习Java&#xff08;Java面试专题&#xff09; 1.6大设…...

【叠高高】叠蛋糕游戏的微信小程序开发流程详解

记得小时候玩过的搭积木游戏吗&#xff0c;和叠高高游戏原理差不多的&#xff0c;与之类似的还有盖高楼游戏&#xff0c;就是看谁盖的&#xff08;叠的&#xff09;最高&#xff0c;这里讲一下比较基础的叠高高游戏小程序实现过程&#xff0c;对编程感兴趣的同学可以参考学习一…...

收集关键词的方法有哪些?(如何查找精准的行业流量关键词)

关键词的收集通常可以通过以下几种方法: 关键词收集方法 1.根据市场价值、搜索词竞争性和企业实际产品特征进行筛选&#xff1a;确定您的关键词列表之前&#xff0c;建议先进行市场分析&#xff0c;了解您的竞争对手、行业状况和目标受众等信息&#xff0c;以更好地了解所需的特…...

【GreenDao】RxQuery查询并修改GreenDao数据库,完成后更新UI

GreenDao是一个轻量级的ORM&#xff08;对象关系映射&#xff09;数据库&#xff0c;而RxJava是一个响应式编程库&#xff0c;可以帮助我们更轻松地处理异步事件。在 Android 应用程序中&#xff0c;您可以使用这两个库一起处理数据库查询和更新&#xff0c;并使用观察者模式来…...

Modifier ‘public‘ is redundant for interface methods错误

java中接口的方法默认是 public abstract 的 所以放心的删掉public即可&#xff0c;如果改为protected 或者 private还会报错 接口的方法及变量的默认修饰符 1.接口中每一个方法也是隐式抽象的,接口中的方法会被隐式的指定为 public abstract &#xff08;只能是 public abst…...

Redis缓存击穿及解决问题

缓存击穿的意思是对于设置了过期时间的key,缓存在某个时间点过期的时候&#xff0c;恰好这时间点对这个 Key有大量的并发请求过来&#xff0c;这些请求发现缓存过期- -般都会从后端DB加载数据并回设到缓存&#xff0c;这个时候大并发的请求可能会瞬间把DB压垮。 解决方案有两种…...

环境感知算法——2.CenterNet基于KITTI数据集训练

1. CenterNet简介 CenterNet采用了一种新的检测思路&#xff0c;即以目标中心点为基础&#xff0c;直接回归出目标的位置和大小。而传统的目标检测算法通常会先产生大量候选框&#xff08;Anchor&#xff09;&#xff0c;再通过分类器进行筛选&#xff0c;这种方法比较复杂。C…...

JUC 高并发编程基础篇

JUC 高并发编程基础篇 • 1、什么是 JUC • 2、Lock 接口 • 3、线程间通信 • 4、集合的线程安全 • 5、多线程锁 • 6、Callable 接口 • 7、JUC 三大辅助类: CountDownLatch CyclicBarrier Semaphore • 8、读写锁: ReentrantReadWriteLock • 9、阻塞队列 • 10、ThreadPo…...

【十二】设计模式~~~行为型模式~~~命令模式(Java)

命令模式-Command Pattern【学习难度&#xff1a;★★★☆☆&#xff0c;使用频率&#xff1a;★★★★☆】 1.1. 模式动机 在软件设计中&#xff0c;我们经常需要向某些对象发送请求&#xff0c;但是并不知道请求的接收者是谁&#xff0c;也不知道被请求的操作是哪个&#xf…...

可再生能源的不确定性和储能系统的时间耦合的鲁棒性和非预期性区域微电网的运行可行性研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

Revit中如何使创建的族文件内存变小

族文件的大小直接影响到项目文件的大小和软件运行速度&#xff0c;如何将族文件做的最小并且满足项目需求呢? 方法一&#xff1a;清除未使用项 1. 族制作完成可以把族文件中未用到的外部载入族或其他多余数据删掉&#xff0c;点击“管理”选项卡下拉的“清除未使用项”命令; 2…...

4090D显存无忧!Guohua Diffusion优化策略详解,小白也能稳定运行

4090D显存无忧&#xff01;Guohua Diffusion优化策略详解&#xff0c;小白也能稳定运行 1. 工具概览&#xff1a;专为4090D优化的国风绘画神器 Guohua Diffusion是一款基于原生国风扩散模型开发的本地绘画生成工具&#xff0c;针对NVIDIA RTX 4090D显卡进行了深度优化。不同于…...

2025年阿里云幻兽帕鲁联机服务器极速搭建指南

1. 为什么选择阿里云搭建幻兽帕鲁服务器&#xff1f; 最近很多朋友问我&#xff0c;为什么非要选择阿里云来搭建幻兽帕鲁的联机服务器&#xff1f;作为一个从游戏测试阶段就开始折腾服务器搭建的老玩家&#xff0c;我总结了几个关键原因。首先&#xff0c;阿里云的游戏服务器专…...

Dify工作流架构:声明式编排与可视化执行引擎的技术实现

Dify工作流架构&#xff1a;声明式编排与可视化执行引擎的技术实现 【免费下载链接】Awesome-Dify-Workflow 分享一些好用的 Dify DSL 工作流程&#xff0c;自用、学习两相宜。 Sharing some Dify workflows. 项目地址: https://gitcode.com/GitHub_Trending/aw/Awesome-Dify…...

Wan2.2-I2V-A14B与数据库联动:自动化生成电商商品动态详情页视频

Wan2.2-I2V-A14B与数据库联动&#xff1a;自动化生成电商商品动态详情页视频 1. 电商视频制作的痛点与机遇 电商平台每天都有大量新品上架&#xff0c;传统的商品详情页视频制作方式面临巨大挑战。一个中型电商平台每月可能新增上千款商品&#xff0c;如果每款商品都需要人工…...

从“三次握手”到文件落地:用Wireshark抓包带你彻底搞懂C++ Socket文件传输全过程

从“三次握手”到文件落地&#xff1a;用Wireshark抓包带你彻底搞懂C Socket文件传输全过程 当你在浏览器下载文件时&#xff0c;是否好奇过数据是如何跨越网络准确无误地到达你的电脑&#xff1f;本文将带你用C实现一个完整的TCP文件传输程序&#xff0c;并通过Wireshark抓包工…...

基于SpringBoot+Vue的疫情物资管理系统管理系统设计与实现【Java+MySQL+MyBatis完整源码】

摘要 近年来&#xff0c;全球范围内突发公共卫生事件频发&#xff0c;疫情物资的高效管理与调配成为保障社会稳定的重要环节。传统物资管理方式依赖人工操作&#xff0c;存在效率低、数据不透明、响应速度慢等问题&#xff0c;难以满足紧急情况下的物资调度需求。尤其在新冠疫情…...

Windows 11安卓子系统实战:无需商店直装APK的终极指南

1. Windows 11安卓子系统核心概念解析 Windows 11安卓子系统&#xff08;Windows Subsystem for Android&#xff0c;简称WSA&#xff09;是微软推出的重磅功能&#xff0c;它让Windows系统首次实现了原生运行安卓应用的能力。这个功能本质上是在Windows内核层构建了一个轻量化…...

逆向工程必备:用aardio和Sunny中间件抓取手机App封包的3种实战姿势

逆向工程实战&#xff1a;aardio与Sunny中间件的移动端封包拦截艺术 在移动应用安全研究领域&#xff0c;封包拦截与分析是理解应用通信逻辑的关键入口。不同于传统的PC端抓包&#xff0c;移动环境面临着证书绑定、代理检测等更复杂的防御机制。aardio配合Sunny中间件构建的轻量…...

避坑指南:Xdocreport模板制作中的5个常见错误及解决方案

Xdocreport实战避坑指南&#xff1a;模板制作中的5个高频错误与深度解决方案 在Java生态中处理动态Word文档生成时&#xff0c;Xdocreport凭借其与MS Office的无缝兼容性和模板灵活性&#xff0c;已成为企业级文档自动化的重要工具。但许多开发者在从Freemarker迁移到Xdocrepor…...

AceCommon:Arduino嵌入式零堆分配轻量C++工具库

1. AceCommon 库概述&#xff1a;面向嵌入式 Arduino 的轻量级底层工具集AceCommon 是一个专为资源受限的微控制器平台&#xff08;尤其是 Arduino 生态&#xff09;设计的零依赖、低开销 C 工具库。其核心设计哲学是“小而精、无侵入、可复用”。与常见的功能臃肿、依赖繁杂的…...