Git的两大学习目标和具体使用情景

学习的两大目标

1. 技术目标,学习一些基础的技术问题
  1. 操作原理与常见区域
    掌握Git企业级应⽤,深刻理解Git操作过程与操作原理,理解⼯作区,暂存区,版本库的含义
    深刻学习Git的所有操作,过程和原理,理解Git常见的区域的含义
  2. 版本管理
    掌握Git版本管理,⾃由进⾏版本回退、撤销、修改等Git操作⽅式与背后操作原理
  3. 分支管理
    从分⽀创建,切换,合并,删除的整个⽣命周期,灵活进⾏各种场景下的分⽀管理,学习常⻅分⽀管理策略
  4. 仓库管理
    掌握Git远程仓库与本地仓库,结合版本管理与分⽀管理,做到基于分⽀级的个⼈级开发
  5. 分布式版本控制
    理解分布式版本控制系统,学习远程仓库与本地仓库的交互操作,掌握多⼈协作开发模式
2. 协作目标
  1. 学习企业级常⻅分⽀策略(master/release/develop/feature/hotfix等),
  2. 理解不同公司,不同环境下适合的分⽀模型。
  3. 结合案例,引⼊⼯程师,测试⼈员,技术经理等⻆⾊,展现项⽬开发过程的全貌,深刻理解开发的整体流程,俯视Git在其中的作⽤

使用情景

  • 如果你的老板或者导师,要产出一款产品,需要你帮忙写一个设计文档,当你将写好的设计文档提交时,大概率不会一次成功,老板或导师会要求你下去修改,这样可能就有多次修改
  • 不过可能老板第二次修改的文档看都没看就让你下去修改,当改了五次之后,老板又说你的第一次的文档是最符合预期的
  • 当遇到这种情况,有没有办法拿到设计文档的第一次版本呢?
    答案是不可以的,因为你是对这一份文档进行多次修改,这份文档保存的是第五次修改的内容,那你是没有办法拿到第一次修改的版本的
    那这样的话你的工作可能就完不成了
  • 当下一次又遇到这样的工作时,一般老板是不会认同你的第一份文档,会叫你去修改,对这个设计文档起名叫V1
    这个时候你是不会对V1文档去进行修改的,而是把内容进行复制,拿到副本进行内容的修改,命名成设计文档V2.这个时候,不管老板要的是第一版还是第二版都能直接拿给他

1. 做法分析
第一种做法
对同一个文档进行多次修改
没有办法对不同的版本进行管理
没有办法拿到之前版本的内容
第二种做法
对一个文档进行多个版本的管理
但是有一个非常严重的问题

现在只有5个版本的文档,但是如果这个文档一直升级,到二十几甚至上百个版本,你倒是也能拿出中间的版本,但是如果你的老板要你拿出添加了某个功能之后的文档,你能不能知道在这一百个版本里面,哪个版本是需要的版本?

版本维护的问题
随着版本的不断增多,维护好版本是很有挑战的
各自的版本修改的内容是什么,是否知道

2. 解决方案
  • 使用版本控制器
    可以解决上面描述的问题
    可以了解到一个文件的所有的历史,可以维护到这个文件的发展过程
    可以记录在一个项目中的代码文件的每一次的改动和版本的迭代和管理
    记录每次的修改以及版本迭代的一个管理系统

  • Git就是目前最主流的版本控制器
    Git可以控制电脑上所有格式的文件
    对于开发人员来说,可以帮助管理软件开发过程中的源代码文件

3. 具体场景
  1. 文本文件
    现在有一个文档,里面是有一些内容的
    这时对文档进行修改,在第二行新加一些单词git
    Git就能帮我们把修改的内容记下来
    会记第二行新增“git”
  2. 二进制文件
    图片、视频
    • 没办法跟踪文件具体的变化,只能把这些二进制文件每次改的内容串起来
      • 可以知道图片文件由100kb->200kb
      • 具体修改的内容没有办法知道

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

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

相关文章

【系统架构设计师】系统工程与信息系统基础 01

系统架构设计师 - 系列文章目录 01 系统工程与信息系统基础 文章目录 系列文章目录 前言 一、系统工程 ★ 二、信息系统生命周期 ★ 信息系统建设原则 三、信息系统开发方法 ★★ 四、信息系统的分类 ★★★ 1.业务处理系统【TPS】 2.管理信息系统【MIS】 3.决策支持系统…

VMware安装Ubuntu虚拟机

1. 安装VMware VMware中国官网:VMware - Delivering a Digital Foundation For Businesses VMware Workstation Player(官方个人免费版):VMware Workstation Player | VMware VMware Workstation Pro(商用收费版&am…

Glusterfs 常用命令

1. 启动/关闭/查看glusterd服务 #启动: systemctl daemon-reload systemctl start glusterd#开机自动启动glusterd服务: systemctl enable glusterd#关闭: systemctl stop glusterd#查看状态: systemctl status glusterd 2. 为存…

并发编程1-多线程并发编程的基本概念

多线程并发编程是指在一个程序中同时执行多个线程,每个线程都可以独立执行不同的任务,从而提高程序的效率和响应性。以下是多线程并发编程的基本概念: 线程:线程是程序中的执行单元,它可以独立运行,并拥有自…

java的23种设计模式01-设计模式介绍

一、设计模式的定义 设计模式,是指在软件设计中,被反复使用的一种代码设计经验。 目的:是为了可重用代码,提高代码的可扩展性和可维护性。 软件开发要实现可维护、可扩展,就必须尽量复用代码,并且降低代码…

GZ083 产品艺术设计赛题第四套

全国职业院校技能大赛 产品艺术设计赛项赛题四 赛项名称 产品艺术设计 英语名称 Product Art Design 赛项编号 GZ083 归属产业 数字产业 任务名称 “探索”主题儿童行李箱设计 赛项组别 中职组 高职组 □学生组 □教师组 □师生联队试点赛项 R学生组 □教师组 □…

Python相关的考试和认证

1.计算机等级考试二级python http://ncre.neea.edu.cn/ 2.蓝桥杯大赛青少年创意编程Python组 http://kid.lanqiao.cn/ 3.青少年编程能力等级_python(CERACU PAAT) http://paat.creacu.org.cn/ 4.全国青少年软件编程等级考试标准(Python1-6级) 中国电子…

CTP-API开发系列之九:行情登录及订阅代码

CTP-API开发系列之九:行情登录及订阅代码 前情回顾全局配置参数行情初始化代码行情登录行情订阅行情接收注意事项 前情回顾 CTP-API开发系列之一:各版本更新说明(持续更新) CTP-API开发系列之二:问题汇总(…

tigramite教程(六)使用TIGRAMITE 进行因果发现

使用TIGRAMITE 进行因果发现 基本用法简单玩玩万年不变的第一步:画出来调查数据依赖性和滞后函数PCMCI 因果发现错误发现率控制进一步相关的方法学教程 画图整合专家对链条的假设基准测试和验证因果效应估计数据集挑战滑动窗口分析 TIGRAMITE 是一个时间序列数据分析的python包…

【Python】新手进阶学习:os.sep---跨平台路径分隔符

【Python】新手进阶学习:os.sep—跨平台路径分隔符 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您…

挑战杯 多目标跟踪算法 实时检测 - opencv 深度学习 机器视觉

文章目录 0 前言2 先上成果3 多目标跟踪的两种方法3.1 方法13.2 方法2 4 Tracking By Detecting的跟踪过程4.1 存在的问题4.2 基于轨迹预测的跟踪方式 5 训练代码6 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 🚩 深度学习多目标跟踪 …

【Android】WebView请求HttpRequest和HttpResponse

通过重写WebViewClient默认方法,我们可以实现拦截网络请求的功能 拦截HttpRequest override fun shouldOverrideUrlLoading(view: WebView,request: WebResourceRequest ): Boolean返回true表示阻止该网页加载,返回false表示不拦截 HttpResponse ove…

MPP数据架构设计的缺点

目录 一、MPP架构 二、批处理架构和MPP架构 三、MPP架构的OLAP引擎 一、MPP架构 随着分布式、并行化技术成熟应用,MPP引擎逐渐表现出强大的高吞吐、低延时计算能力,有很多采用MPP架构的引擎都能达到“亿级秒开”。例如Impala、ClickHouse、Druid、Dor…

基于SpringBoot+MYSQL的旅游网站

目录 1、前言介绍 2、主要技术 3、系统流程分析 1、登录流程图如下: 2、管理员后台管理流程图如下: 3. 修改密码流程图如下: 4、系统设计 4.1、系统结构设计 4.2 数据库概述 4.2.1 数据库概念设计 4.2.2 数据库逻辑设计 5、运行截…

多线程多进程处理服务器并发(多进程处理如何解决僵死进程)

目录 1.可循环发送数据的代码 2.改成循环之后每次发现只能处理一个客户端 3.服务器端处理并发问题 3.1 思路 3.2 利用多线程实现并发 ​编辑 3.3 利用多进程实现并发 3.3.1 多进程并发产生的僵死进程问题 ​3.3.2 解决僵死进程问题 1.可循环发送数据的代码 服务器代…

计算机模式识别的基本步骤与详解

在数字化时代的浪潮中,计算机模式识别技术以其卓越的能力,在图像识别、语音识别、自然语言处理等领域展现出了广泛的应用前景。那么,计算机究竟是如何进行模式识别的呢?本文将详细解析计算机进行模式识别的基本步骤,并深入探讨每个步骤的核心要点。 一、模式识别的基本步…

unity中实现场景跳转

1,第一步创建2个场景(右键资源窗口,名字这里我取的1111和2222) 2.添加跳转按钮(双击其中一个场景并添加按钮) 3.编辑按钮的文字(将原本的按钮打开点击里面的text,就可以在右边编辑文…

【JSON】JSON解析 fastJson框架

一、JSON (一)、简介 JSON(JavaScript Object Notation, JS 对象简谱) 是一种轻量级的数据交换格式。 ​ 简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。 ​ 易于人阅读和编写,同时也易于机器解析和生成,并有效地提…

MySQL8.0安装教程+使用Navicat远程连接

MySQL8.0安装教程使用Navicat远程连接 版本:MySQL8.0.28 环境:Windows11 1.MySQL下载 进入官网https://www.mysql.com/进行下载: 2.安装MySQL 下载好后,点击运行程序开始安装,安装步骤如下: 以下步骤验…

学习Java的第九天

本章将学习什么是类的无参、带参方法又是什么 一、什么是类的无参方法 类是由一组具有相同属性和共同行为的实体抽象而来。对象执行的操作是通过编写类的方法实现的。显而易见,类的方法是一个功能模块,其作用是“做一件事情”。 1、类的方法必须包括以…