目录

  • 引入
    • 版本控制
    • 集中式和分布式版本控制
    • git工作机制
    • 代码托管中心
  • Git常用命令
    • 设置用户签名
    • 初始化本地库
    • 查看库状态
    • add和提交
    • 版本穿梭
  • git分支操作
    • 分支定义
      • 分支好处
    • 分支操作
    • 查看分支
    • 创建分支
    • 切换分支
    • 分支合并💕✨🩷
    • 合并冲突
  • git团队协作
    • 团队内协作
    • 跨团队协作
  • Github远程库
    • 创建远程库和别名
    • push推送
    • 拉取远程库到本地库
      • 三级目录
  • 项目场景:
  • 问题描述
  • 原因分析:
  • 解决方案:

学习链接 尚硅谷 (链接: link)

TO某个姓li名tao喜欢视奸的男的,别视奸了哈,挺没劲的。🤮🤮🤮💩

引入

版本控制

在这里插入图片描述
git主要是用于团队协作
小红和小蓝各自修改代码不同的区域,合并到master分支之后就是把修改的地方合并进去

集中式和分布式版本控制

集中式问题:代码服务器的单点服务器问题
分布式:本地也可以做版本控制,每个客户端保留完整项目;远程一般是服务商也不容易挂掉
在这里插入图片描述

git工作机制

提交本地库之后就会有历史版本,eg v4版本是在v3版本之上的,所以历史版本是不能删掉的

  • 提交历史版本之后就可以push到远程库;
    在这里插入图片描述

代码托管中心

代码托管中心一般就是我们认为的远程库

Git常用命令

🩷🩷🩷git中table也是可以自动补全的

在这里插入图片描述

设置用户签名

前面两个设置好用户签名,用于提交代码,==签名的作用就是为了区分不同操作者身份
设置好用户签名之后,在本地的user账号里面的.gitconfig可以看到信息,

  • 这个和将来登录github或者其他远程库的账号没有任何关系

初始化本地库

git init:初始化本地库之后才可以管理当前的文档
ll命令:展示所有内容

查看库状态

在这里插入图片描述
vim中【先按esc】yy是复制,p是粘贴 :wq是保存
bash中linux命令通用
里面有文件没有git add进入暂存区就会红色提示

add和提交

中间那个965c6al]是提交的版本号在这里插入图片描述
使用git reflog可以查看提交版本
git log可以看到详细提交信息,包括用户签名

  • 修改之后就可以使用git status查看状态,会发现有改变,然后再add【会变绿】,再git commit,然后使用git log或者git relog就很方便

版本穿梭

版本穿梭会影响工作区,谨慎使用
如果需要恢复到之前的版本就是用版本穿梭,
具体操作:git reflog查看需要穿梭的版本好,然后使用git reset --hard 版本号,然后指针就会指向恢复的版本
在这里插入图片描述
前面提到的指针就是HEAD文件中记录的,里面会告诉我当前是指向哪个分支【例如master】;要寻找具体是哪个版本号在ref里面找HEAD里面的分支的名字,里面记录的就是版本号;
在这里插入图片描述

git分支操作

分支定义

定义:可以简单理解分支为一个单独的copy;开发完之后再合并进去
在这里插入图片描述
示意图:master也是一个分支,或者称为主线分支。
在这里插入图片描述

分支好处

在这里插入图片描述

分支操作

在这里插入图片描述
注意对话框,最右边显示的就是当前的分支
在这里插入图片描述

查看分支

git branch -v用于查看当前有几个分支,例如下面这个只有一个分支master
在这里插入图片描述

创建分支

git branch 分支名:就可以创建一个新的分支 例如起名为hot-fix

切换分支

git checkout 分支名:在这里插入图片描述
然后在这个分支下面修改文件,然后add,然后commit

分支合并💕✨🩷

需要回到master分支上【git checkout master】,然后git merge hot-hit,就表示将hot-fix分支合并到master分支上;如果弄反了,没有回到master分支,而是还在hot-fix分支上,那就是自己合并自己

  • 一定要切回被合并的主干分支上
  • 下面这个图就表示合并成功,master合并的时候就被改了
    在这里插入图片描述

合并冲突

例如:如果master分支和hot-fix分支都修改了同一个地方,就不会自动合并;

  • 下面黄框表示合并没有成功,还在合并
    在这里插入图片描述
    这时进入提醒conflict的文件里面用cat,会自动显示冲突的地方;人为修改之后再add[ git add hello.txt],再commit,注意,这个时候commit的时候不用加文件名,会自动合并刚刚修改之后的
    在这里插入图片描述
    这个就是加了文档名和不加文档名的区别。加了文档名会报错,不知道合并哪一个,不加文档名不报错,直接合并刚刚人工手动修改的那个
  • 注意!这里修改的还是master分支上面的,刚刚就是站在master分支角度合并出错去修改的,那么hot-fix分支并不会改变
    在这里插入图片描述

git团队协作

团队内协作

已有本地库,如果再使用pull拉下来的话,本地库会更新显示别人的修改
在这里插入图片描述

跨团队协作

远程库2首先fork【也就是复制,github上的fork就是这个意思】,开发好之后 pull ,远程库1审核后可以merge
在这里插入图片描述

Github远程库

在这里插入图片描述

创建远程库和别名

创造别名:因为远程的链接有点长,起个名字
git remote -v 查看跟当前本地库链接的远程库有哪些
git remote add 别名 分支

push推送

git push 刚刚起的别名 分支 可能因为网络原因失败
最好远程和本地的名字是一样的

拉取远程库到本地库

本地库和远程库不是同步的了,就需要拉取到本地然后更新修改
git pull 别名 远程端的分支名字

三级目录

项目场景:

提示:这里简述项目相关背景:

例如:项目场景:示例:通过蓝牙芯片(HC-05)与手机 APP 通信,每隔 5s 传输一批传感器数据(不是很大)


问题描述

提示:这里描述项目中遇到的问题:

例如:数据传输过程中数据不时出现丢失的情况,偶尔会丢失一部分数据
APP 中接收数据代码:

@Overridepublic void run() {bytes = mmInStream.read(buffer);mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();}

原因分析:

提示:这里填写问题的分析:

例如:Handler 发送消息有两种方式,分别是 Handler.obtainMessage()Handler.sendMessage(),其中 obtainMessage 方式当数据量过大时,由于 MessageQuene 大小也有限,所以当 message 处理不及时时,会造成先传的数据被覆盖,进而导致数据丢失。


解决方案:

提示:这里填写该问题的具体解决方案:

例如:新建一个 Message 对象,并将读取到的数据存入 Message,然后 mHandler.obtainMessage(READ_DATA, bytes, -1, buffer).sendToTarget();换成 mHandler.sendMessage()

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

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

相关文章

redis原理篇--Dict

Dict数据结构一、Redis字典的核心组件Redis字典由三部分构成:dictht(哈希表):存储桶数组与元数据dictEntry(哈希节点):存储键值对dict(字典主体):包含双哈希表…

静态路由主备切换

在网络中,静态路由的主备切换是实现网络冗余的基础方案之一,通过配置不同优先级的静态路由,确保主用路径故障时,流量能自动切换到备用路径,提升网络可靠性。以下从知识讲解和实验配置两部分详细说明。一、静态路由主备…

PDF处理控件Aspose.PDF教程:在C#、Java、Python中快速缩小PDF

如果您的PDF太大,无法通过电子邮件发送,或者在线加载时间过长,您可以在几秒钟内缩小 PDF 大小。本教程介绍了借助Aspose.PDF使用 C#、Java 和 Python 编程快速缩小PDF的方法。 Aspose.PDF官方试用版下载 通过编程缩小 PDF 尺寸 如果您需要…

AWS EKS 常用命令大全:从基础管理到高级运维

前言 Amazon Elastic Kubernetes Service (EKS) 是 AWS 提供的托管 Kubernetes 服务,大大简化了 K8s 集群的部署和管理工作。作为 EKS 管理员或开发者,熟练掌握 kubectl 命令是日常工作的基础。本文将详细介绍 EKS 环境中常用的 kubectl 命令,涵盖集群管理、工作负载操作、…

GitHub Browser-Use 的部署失败记录:失败了,失败了。。。。

一、项目背景与核心作用 browser-use 是一个开源的浏览器自动化工具,通过集成 AI 智能体(如 GPT、Claude、DeepSeek 等大型语言模型),实现用自然语言控制浏览器操作。其核心目标是 简化网页交互自动化,尤其适合复杂、…

调用springboot接口返回403,问题定位及总结

背景在一次与前端联调后端接口时前端返回接口返回状态码是403,前端返回说已经带了请求token。排查 查看后端控制台没有出现任何错误信息。自己postman手动调用接口,发现接口正常。仔细核对前端调用接口与postman请求的区别,没有发现任何问题。…

布隆过滤器原理分析、应用场景、与redis使用案例

一、核心结构与工作原理1.1 数据结构布隆过滤器由以下两部分组成:位数组(Bit Array):一个长度为 m 的二进制数组,初始所有位为0。哈希函数组:k 个独立的哈希函数,每个函数将输入元素映射到位数组…

异步并发×编译性能:Dart爬虫的实战突围

Dart凭借其高效的异步并发模型、AOT编译性能和现代化的语法,正成为爬虫开发中值得关注的新选择。特别是对于Flutter应用开发者而言,Dart提供了一种"全栈同语言"的独特优势。 本文我将通过实战代码展示如何利用Dart的核心优势——包括基于Futur…

Day 8: 深度学习综合实战与进阶技术 - 从优化到部署的完整流程

Day 8: 深度学习综合实战与进阶技术 - 从优化到部署的完整流程 🎯 学习目标: 掌握深度学习模型优化、调试、迁移学习等工业级技能,能够构建高性能的深度学习应用 📚 核心概念概览 核心概念解释: 模型优化: 通过正则化、学习率调度等技术提升模型性能和泛化能力 为什么需…

特征工程--机器学习

1、特征工程1.1 概念特征工程(Feature Engineering)是机器学习项目中非常关键的一步,它是指通过领域知识来选择、创建或修改能够使机器学习模型更好地工作的特征(即输入变量)。特征工程的目标是提高模型的性能&#xf…

支持任意 MCP 协议的客户端

支持任意 MCP 协议的客户端(如:Cursor、Claude、Cline)可方便使用高德地图 MCP server。目前支持Streamable HTTP, SSE 和 Node.js I/O 三种接入方式(推荐用户使用Streamable HTTP)。 快速接入-MCP Server|高德地图API

【线性代数】目录

【线性代数】线性方程组与矩阵——(1)线性方程组与矩阵初步【线性代数】线性方程组与矩阵——行列式【线性代数】线性方程组与矩阵——(2)矩阵与线性方程组的解【线性代数】线性方程组与矩阵——(3)线性方程…

豆包新模型+PromptPilot:AI应用开发全流程实战指南

> 当深度推理的豆包大模型遇上智能提示词引擎,传统AI开发中**70%的调试时间被压缩至几分钟**,一场从“手工调参”到“智能优化”的开发范式革命正在发生。 ## 一、技术架构解析:双引擎驱动智能进化 ### 1.1 豆包新模型的技术突破 2025年火山引擎推出的**豆包1.6系列模型…

Day13 Vue工程化

1.介绍&环境准备 npm两项全局配置2.项目介绍&开发流程 npm create vue3.3.4 / install / run dev3.API风格 setup ref() onMounted()两种风格选项式API写法转为组合式API写法在根组件App.vue中引用写好的xxx.vue4.案例1.引入组件2.完整代码<script></script&g…

Linux中配置DNS

Linux中配置DNS服务 一、什么是DNS DNS (Domain Name System) 是域名服务 &#xff0c;它是由解析器和域名服务器组成的。 域名服务器是指保存有该网络中所有主机的域名和对应IP地址&#xff0c; 并具有将域名转换为IP地址功能的服务器。&#xff08;将网址解析成IP&#xff…

Redis应⽤-缓存与分布式锁

&#x1f308; 个人主页&#xff1a;Zfox_ &#x1f525; 系列专栏&#xff1a;Redis &#x1f525; 什么是缓存 缓存(cache)是计算机中的⼀个经典的概念.在很多场景中都会涉及到 核⼼思路就是把⼀些常⽤的数据放到触⼿可及 (访问速度更快) 的地⽅,⽅便随时读取 对于计算机…

TCP、HTTP/HTTPS、FTP 解析 + 面试回答参考

TCP、HTTP/HTTPS、FTP 解析 面试回答参考 在后端开发、网络编程以及运维面试中&#xff0c;TCP 协议、HTTP/HTTPS、FTP 是高频考点。本文将从原理、流程、面试常问问题出发&#xff0c;帮你一次性搞懂这些核心知识点。一、TCP 三次握手 1. 作用 建立可靠连接&#xff0c;确保双…

ATF(TF-A)安全通告 TFV-13(CVE-2024-7881)

安全之安全(security)博客目录导读 ATF(TF-A)安全通告汇总 目录 一、漏洞描述 二、缓解措施与建议 三、补丁修改 关于该漏洞的具体细节,可参考【CVE-2024-7881】ARM CPU漏洞安全通告】 Title 非特权上下文可以触发数据相关的预取引擎,从而获取特权位置的内容,并将这些…

Pytorch深度学习框架实战教程-番外篇02-Pytorch池化层概念定义、工作原理和作用

相关文章 视频教程 《Pytorch深度学习框架实战教程01》《视频教程》 《Pytorch深度学习框架实战教程02&#xff1a;开发环境部署》《视频教程》 《Pytorch深度学习框架实战教程03&#xff1a;Tensor 的创建、属性、操作与转换详解》《视频教程》 《Pytorch深度学习框架实战…

常见通信协议详解:TCP、UDP、HTTP/HTTPS、WebSocket 与 GRPC

常见通信协议详解&#xff1a;TCP、UDP、HTTP/HTTPS、WebSocket 与 RPC 在现代网络通信中&#xff0c;各种协议扮演着至关重要的角色&#xff0c;它们决定了数据如何在网络中传输、控制其可靠性、实时性与适用场景。对于开发者而言&#xff0c;理解这些常见的通信协议&#xff…