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

Git从基础到实践

1.Git是用来做什么的?

git就是一款版本控制软件,主要面向代码的管理。你可以理解为Git是一个代码的备份器,给你的每一次修改后的代码做个备份,防止丢失,这个是git最基本的功能。   

其次,git不止备份,当你需要比对多个备份的区别时,git会给出不同备份间的区别,帮你管理好版本。

2.为什么要选择Git?

在软件开发过程中,协同开发以及版本迭代更新是再正常不过的事情了。但是能够完整、便捷的将版本进行管理确是不太容易的一件事情。

就好比,一个项目,我们开发了第一版、第二版、第三版、打死不改版、绝对不改版、终极版、终极不修改版以至于再改就砸电脑版,最终敲定的方案是第一版。这种情况下,改到最后已经看不出当初的模样了。所以,我们需要将每一次的修改记录并保存下来,以便于为后面的版本溯源。

凡事都是有两面性的,作为版本保存和记录的软件系统也是一样的。所以就诞生了两种不同的管理模式,一种是叫集中式版本控制系统(例如CVS及SVN),另一种则是分布式版本控制系统(例如Git)。

2.1分布式版本控制工具

分布式版本控制系统,例如git,重点在于分布。分布的含义不是说每台计算机上只留有版本库的一部分。恰恰相反,分布的含义是每台计算机上都还有一个完整的版本库。所有版本信息仓库全部同步到本地的每个用户, 这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时push到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据。

2.2集中式版本控制工具

集中式版本控制系统诸如CVS,SVN等,都有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新

3.如何使用Git?

3.1了解本地库,暂存区,本地仓库,远程仓库

3.2git的常用命令

3.3分支

基本概念

在版本控制的过程中,推进多个任务,为每个任务就可以创建每个任务的单独分支,使用分支可以使得程序员把自己的工作从开发主线上分离开来。开发自己的分支的时候,不会影响主线分支的运行,对于初学者来水,可以理解为分支就是副本,一个分支也就是一个单独的副本,分支底层也是指针的引用

常用命令

 合并分支的时候发生冲突

冲突的原因

合并分支的时候就会发现

如何解决冲突?

1.打开有冲突的文件

比较当前分支和传入分支的区别,进行修改,解决冲突

再添加到暂存区,提交更改

3.4git团队的协作流程

1.连接远程仓库的一些基本的命令

2.流程图大致如下

 总之,git这部分需要勤加练习,实践出真知

相关文章:

Git从基础到实践

1.Git是用来做什么的? git就是一款版本控制软件,主要面向代码的管理。你可以理解为Git是一个代码的备份器,给你的每一次修改后的代码做个备份,防止丢失,这个是git最基本的功能。 其次,git不止备份,当你需要比对多…...

C 保留字解释

语句 // 单行注释 /* */ 多行注释 #include 头文件引入声明 #define 预先定义 return 结果返回语句(可以带参数,也可不带参数) printf(); 输出 if 条件语句 else 条件语句否定分支(和 if 连用&a…...

【Web】https 与 http 的区别

文章目录 一、基本概念二、区别对比 一、基本概念 http :超文本传输协议,一种网络传输协议,一个客户端和服务器请求和应答的标准(TCP)。 https :简单讲就是在http基础上 使用 SSL 或 TLS 对请求和响应进行…...

【KVM】半虚拟化和全虚拟化技术

前言 大家好,我是秋意零。 上一篇的介绍了软件和硬件虚拟化类型,现在来看看半虚拟化技术和通过硬件虚拟化类型辅助的全虚拟化技术吧! 👿 简介 🏠 个人主页: 秋意零🔥 账号:全平台…...

react中的useReducer复杂的状态管理

一、useReducer reducer官网教程 useReducer 是 React 提供的一个用于状态管理的 Hook。它可以替代 useState,更适用于处理复杂的状态逻辑。 useReducer 接受一个reducer函数和一个初始状态,并返回当前状态以及一个 dispatch 函数,用来触发…...

SpringCloudAlibaba - 项目完整搭建(Nacos + OpenFeign + Getway + Sentinel)

目录 一、SpringCloudAlibaba 项目完整搭建 1.1、初始化项目 1.1.1、创建工程 1.1.2、配置父工程的 pom.xml 1.1.3、创建子模块 1.2、user 微服务 1.2.1、配置 pom.xml 1.2.2、创建 application.yml 配置文件 1.2.3、创建启动类 1.2.4、测试 1.3、product 微服务 1…...

如何使用Python的matplotlib和seaborn库绘制颜色渐变的高级散点图

前言 我的科研论文中需要绘制一个精美的散点图,表达的是各个散点距离中心点的距离远近情况,特点如下: 绘图的美观程度高根据距离目标点的距离的不同,各个散点能有颜色或者是透明度上的区分相应的统计量是与中心点(目…...

根据Word模板,使用POI生成文档

突然想起来有个小作业&#xff1a;需要根据提供的Word模板填充数据。这里使用POI写了一个小demo验证下。 测试用模板&#xff1a; 执行结果 1.引入依赖坐标 <dependency><groupId>org.apache.poi</groupId><artifactId>poi-ooxml</artifactId&…...

大语言模型的学习路线和开源模型的学习材料《一》

文章目录 第一层 LLMs to Natural Language Processing (NLP)第一重 ChatGLM-6B 系列ChatGLM3ChatGLM2-6BChatGLM-6B第十重 BaichuanBaichuan2Baichuan-13Bbaichuan-7B第十一重 Llama2第二重 Stanford Alpaca 7B第三重 Chinese-LLaMA-Alpaca第四重 小羊驼 Vicuna第五重 MOSS第六…...

【案例】3D地球

效果图&#xff1a; 直接放源码 <!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html; charsetutf-8" /><meta name"viewport" content"initial-scale1.0, user-scalableno" …...

安全组问题 访问华为云服务器端口

一些常用的安全组的配置示例&#xff0c;包括远程登录云服务器&#xff0c;对外提供网站访问、不同安全组内实例内网互通等。 通常情况下&#xff0c;安全组默认拒绝所有来自外部的请求。您需要遵循白名单原则添加安全组入方向规则&#xff0c;允许来自外部的特定请求访问安全组…...

音视频常见问题(七):首开慢

本文主要讨论音视频应用中的首开慢问题&#xff0c;文章介绍了首开慢的产生原因&#xff1a;DNS解析耗时、网络传输协议耗时、传输网络调度耗时&#xff0c;并提供了排查方式和解决方案。即构科技的Express SDK和MSDN网络可以有效的解决首开慢问题&#xff0c;且节省开发成本。…...

[SSD综述1.2] SSD 和 HDD(机械硬盘) 区别?

​ 依公知及经验整理,原创保护,禁止转载。 专栏 《SSD入门到精通系列》 <<<< 返回总目录 <<<< 文章目录 前言1. 速度差异多大1.1 常见产品速度1.2 最新产品速度2 机械硬盘和固态硬盘的差异点3 引起速度差异的原因是什么(硬件)?3.1 存储介质不同3.…...

ali sdm docker

当然要先安装docker和docker-compose cd /usr/local mkdir sdm cd sdm touch docker-compose.yml&#xff0c;编辑内容如下&#xff1a; version: "3" services:sdm:image: registry.cn-shanghai.aliyuncs.com/nls-cloud/sdm:latestcontainer_name: nls-cloud-s…...

HCIE-kubernetes(k8s)-Authentication身份验证

1、远程登录 1、kubeconfig方式 在master上都是以kubeconfig方式登录的&#xff0c;并不是说有一个文件叫kubeconfig。 默认使用的配置文件是~/.kube/config 这个配置文件&#xff0c;而这个配置文件是通过这个文件/etc/kubernetes/admin.conf 如果在node上执行命令&#xff…...

uniapp开发小程序接入阿里云TTS语音合成(RESTful API)

流程 首先小程序后台配置白名单 1.1 路径&#xff1a;开发-开发管理-开发设置-服务器域名-request合法域名 1.2 request合法域名参数&#xff1a; https://nls-meta.cn-shanghai.aliyuncs.com https://nls-gateway-cn-shanghai.aliyuncs.com引入alitts.js页面使用…...

稳定性测试—fastboot和monkey区别

一、什么是稳定性测试 稳定性测试是指检验程序在一定时间内能否稳定地运行&#xff0c;在不同的场景下能否正常地工作的过程。主要目的是检测崩溃、内存泄漏、堆栈错误等缺陷。 二、Monkey 1.什么是Monkey 是一个命令行工具&#xff0c;通常在adb安卓调试运行&#xff0c;模…...

Python库Requests的爬虫程序爬取视频通用模版

目录 一、引言 二、Requests库介绍 三、通用视频爬虫模板设计 1、确定目标网站和视频页面结构 2、发送HTTP请求获取页面内容 3、解析HTML内容提取视频链接 4、下载视频文件 四、模板应用与实践 五、注意事项 总结与展望 一、引言 随着互联网的发展&#xff0c;视频内…...

ngx_http_set_response_header阅读

1.关于设置头的一些函数指针初始化 typedef struct {ngx_str_t name;ngx_uint_t offset;// 本文中搜索 h[i].handler(r, &h[i], &value&#xff0c;就是回调函数执行的地方ngx_http_set_header_pt handler; } ngx_http_set_hea…...

词典查询工具django-mdict

什么是 django-mdict &#xff1f; django-mdict 不是词典软件&#xff0c;是词典查询的脚本工具&#xff0c;主要目的是解决词典数量多&#xff0c;手机容量不足的问题&#xff0c;是对其他词典软件局域网在线查询功能的补充&#xff0c;是用 django 实现的 mdict 词典查询工具…...

PvZ Toolkit终极指南:植物大战僵尸PC版免费完整修改器快速上手

PvZ Toolkit终极指南&#xff1a;植物大战僵尸PC版免费完整修改器快速上手 【免费下载链接】pvztoolkit 植物大战僵尸 PC 版综合修改器 项目地址: https://gitcode.com/gh_mirrors/pv/pvztoolkit 还在为植物大战僵尸中的资源匮乏而烦恼吗&#xff1f;PvZ Toolkit这款开源…...

实时数据流处理实战:从滑动窗口算法到Docker部署

用 Python 造一个轻量级流处理引擎&#xff0c;顺便把 Git、Docker、CI/CD 全串起来 前言 你是否有过这样的需求&#xff1a;统计过去 5 秒内 API 的请求次数、监控传感器数据的突变、或者对直播间的弹幕进行限流&#xff1f;这些场景都离不开实时数据流处理。而流处理的核心&…...

ESP32嵌入式Web文件管理器:支持SPIFFS/LittleFS/SD卡

1. EspWebFileManager 库概述EspWebFileManager 是一款专为 ESP32 平台设计的嵌入式 Web 文件管理中间件库&#xff0c;其核心目标是将本地文件系统操作能力通过轻量级 HTTP 服务暴露至浏览器端&#xff0c;实现免串口、免烧录工具的现场文件运维。该库并非独立文件系统驱动&am…...

从国赛真题到实战演练:蓝桥杯CTF网络安全竞赛核心题型深度剖析

1. 逆向工程实战&#xff1a;从加密程序到Flag还原 去年蓝桥杯CTF国赛的第一道逆向题让不少选手印象深刻。题目给出一个名为encodefile的可执行程序和一个加密后的数据文件enc.dat&#xff0c;要求还原原始flag内容。这类题型在CTF中非常典型&#xff0c;主要考察选手对程序逻辑…...

OnTopReplica组切换模式揭秘:自动轮换多个监控窗口的完整指南

OnTopReplica组切换模式揭秘&#xff1a;自动轮换多个监控窗口的完整指南 【免费下载链接】OnTopReplica A real-time always-on-top “replica” of a window of your choice (on Windows). 项目地址: https://gitcode.com/gh_mirrors/on/OnTopReplica OnTopReplica是一…...

RAG技术:解锁大模型潜力,实现精准、可信赖的智能问答

RAG&#xff08;检索增强生成&#xff09;技术通过将大语言模型&#xff08;LLM&#xff09;与外部知识库结合&#xff0c;有效解决LLM知识静态、幻觉等问题&#xff0c;提升回答的准确性与可信度。RAG技术核心包括检索和生成两个阶段&#xff0c;通过优化文本分块、索引构建、…...

OpenClaw三种方式安装:手把手保姆级教程

前置操作 【一】获取API Key 现在很多平台的API Key都有免费额度&#xff0c;阿里云和Kimi的优惠力度大些&#xff0c;大家按需索取。 阿里云百炼 Step01&#xff1a;注册/登录阿里云 Step02&#xff1a;创建并获取API Key 注意&#xff1a;我们要的是API Key&#xff0c;如…...

如何利用Outline构建现代化团队知识管理体系

如何利用Outline构建现代化团队知识管理体系 【免费下载链接】outline Outline 是一个基于 React 和 Node.js 打造的快速、协作式团队知识库。它可以让团队方便地存储和管理知识信息。你可以直接使用其托管版本&#xff0c;也可以自己运行或参与开发。源项目地址&#xff1a;ht…...

STM32F103RCT6小车调试实录:搞定TCRT5000循迹与TB6612FNG调速的5个常见坑

STM32F103RCT6小车调试实战&#xff1a;从TCRT5000循迹到TB6612FNG调速的深度排错指南 实验室里&#xff0c;当你看着自己组装的STM32智能小车在黑色轨迹线上歪歪扭扭地行驶&#xff0c;或是电机转速时快时慢不受控制时&#xff0c;那种挫败感我太熟悉了。这不是一篇教你如何从…...

手把手教你用KVM在openEuler 22.03 LTS上安装华为FusionCompute 6.5.1 CNA(含VNC避坑指南)

深度实战&#xff1a;在openEuler 22.03 LTS上通过KVM部署FusionCompute CNA全流程解析 当企业需要构建私有云环境时&#xff0c;华为FusionCompute作为成熟的虚拟化平台常被列为首选方案。本文将完整呈现如何在openEuler 22.03 LTS系统中&#xff0c;通过KVM虚拟化技术实现Fus…...