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

Git基础操作快速入门

Git是一个免费开源分布式版本控制工具,是由Linux的作者Linus开发的第二个伟大作品。2005年由于BitKeeper软件公司对Linux社区停止了免费使用权。Linus迫不得己自己开发了一个分布式版本控制工具,从而Git诞生了

目前使用Git作为版本控制的开源软件:Linux kernel,Android,jQuery,Ruby on Rails,github,码云Gitee等

Git官网可以下载:https://git-scm.com/

1.Git安装

1.1Git服务器的安装

2.Git命令操作

2.1Git交互流程图

  • Clone:克隆,从共享仓库/中央仓库将代码拷贝一份下来
  • Commit:提交,提交的本地仓库
  • PUSH:推送,将本地仓库代码推送到远程中央仓库
  • PULL:拉取,从远程仓库下载最新的代码
  • Git是先提交到本地仓库,然后再推送

2.2 工作区&暂存区

2.3Git命令操作

桌面新建三个文件夹:

模拟两个开发人员本地仓库:gittest/user1 和 gittest/user2

模拟项目经理远程仓库master:gittest

==============仓库管理员或项目经理操作========================
第一步: 创建仓库,进入gittest目录 - 右键Git Bash here
git init --bare pethome
-- pethome仓库名称可以改【--bare 是参数不用管】==============开发人员1操作=============================
第二步:克隆,进入usr1目录 - 右键Git Bash here
git clone ../pethome  -- 相对路径的写法【使用TAB自动补全】第三步:设置个人信息【用户名和邮箱】
cd pethome
git config user.name "user1"
git config user.email "user1@163.com"第四步:新建一个文件并写入数据
echo "User1 add content" > index.jsp 
-- 会自动创建文件,并将User1 add content字符串写入index.jsp【>>追加写】第五步:添加并提交文件 -- 提交到本地仓库
git add index.jsp -- 添加到暂存区
git commit -m "User1 add the file"第六步:把自己的仓库提交到公共服务器
git push origin master==============开发人员2操作=============================
第七步:克隆,进入usr2目录 - 右键Git Bash here
git clone ../pethome  -- 相对路径的写法【使用TAB自动补全】第八步:设置个人信息【如果不这是在提交的时候会出问题】
cd pethome
git config user.name "user2"
git config user.email "user2@163.com"第九步:编写代码:>表示覆盖写,>>表示追加写
echo "User2 add content" >> index.jsp第十步:添加并提交文件 -- 提交到本地仓库
git add index.jsp -- 添加到暂存区
git commit -m "User2 add the file!"  -- 【-m表示message】第十一步:把自己的仓库提交到公共服务器
git push origin master==============开发人员1操作=============================
第十二步:拉取远程服务器最新数据
git pull

其他常用命令

git config --list	 #查看全局配置
git status 				 #查看本地库状态
git checkout 分支名 #分支切换
git fetch          #抓取分支
git reflog 				 #查看版本信息
git branch   			 #查看本地分支信息
git reset --hard 版本号 		#版本穿梭
git reset --hard origin/develop  #将本地分支重置到远程分支的状态
git rm --cached file.txt   #忽略已经被追踪的文件
git add . #将所有发生变动的文件添加到暂存区

3.idea上操作git

3.1 提交文件

3.2拉取代码

3.3解决冲突

正常推送代码,如果出现如下情况可能,就是发生冲突了:

意思是本地代码和远程代码不一样,需要我们手动合并代码,点击 Merge 合并

点击Merge手动合并

中间区域是最终的效果,把中间区域改成你想要的代码即可,然后点击 apply 应用

解决完冲突后,重新执行推送流程

4.分支管理

使用分支意味着你可以把你的工作从开发主线上分离开来,以免影响开发主线,不同分支的代码是相互隔离的,也可以通过合并分支的方式来把多个分支的代码合并再一起。企业中,有严格的项目代码控制,不是任何人都能随意操作核心代码。项目开发都是协同开发,必定是多个人来一起开发同一个项目,如果大家都在同一个代码库上去做操作,代码很容易发生冲突。所以,分支开发模式就应运而生。在分支上做开发,调试好了后再合并到主分支。那么每个人开发模块都不会影响到别人。

4.1完整的git版本分支模型图

  1. master 主分支

master分支是Git默认的主分支,它包含了项目的稳定版本。通常,master分支用于发布正式版本,即经过测试和验证的可靠代码。一般情况下,不应该直接在master分支上进行开发,而是通过其他分支进行开发,并在开发完成后将代码合并到master分支。

  1. release 预发布分支

release 分支可以认为是 master 分支的未测试版,基于develop分支克隆,主要用于打包给测试人员测试,比如说某一期的功能全部开发完成,那么就将 develop 分支合并到 release 分支,测试没有问题就合并到master 分支,只有develop分支可以合并到该分支上,在测试过程中发现的BUG就从该分支再切一个分支进行修复,修复完之后再合并到develop分支

  1. develop 开发分支

基于master分支克隆日常开发分支,该分支正常保存了开发的最新代码,不在该分支上开发,在feature分支上开发具体的新功能然后合并到该分支上,当某一期的功能全部开发完成就合并到release分支,打包给测试人员测试

  1. feature (开发新功能)

feature分支是用于开发单个功能或解决某个问题的分支。当需要开发新功能时,可以从develop分支上创建一个新的feature分支,并在该分支上进行开发工作。在feature分支上进行的开发工作是相对独立的,不会影响其他分支的代码。一旦功能开发完成并通过测试,可以将feature分支合并回develop分支

  1. hotfix (紧急修复)

线上紧急bug修复分支 ,基于master分支克隆, 用于对线上版本的BUG进行修复 ,BUG修复完之后需要合并到develop和master分支

4.2分支的使用

4.2.1IDEA中创建分支

在IDEA任务栏右下角有一个 : Get:master代表当前工作空间是在master分支

如图:这里有一些Git的常用操作,如果需要创建一个新的分支可以使用 Get:master -> New Branch 可以新建一个分支,然后填上分支名。

如果想要切换到某一个分支,可以直接选中分支名 -> 点击 check out 即可切换。比如我们可以选中: remote 下的 feature分支,然后进行checkout ,那么工作空间就会切换到 feature分支。

4.2.2合并分支

现在我们在自己的feature分支中编写好功能,然后接下来就是需要把代码合并到 Develop分支了。首先我们在IDEA工具中把代码切换到开发分支

切过来发现 项目中是没有 这是我新写的代码.txt刚才写的代码的。那么就是需要我们把feature分支中的代码合并过来,如下:(在develop分支把feature分支的代码合并到develop分支) ,合并代码是有可能产生冲突的,需要根据情况解决冲突

合并过来之后就发现在当前分支就有了feature分支的代码了,然后我们可以pull(拉取)一下远程代码,如果有冲突就解决冲突,没冲突就可以push代码到develop的远程分支了。

相关文章:

Git基础操作快速入门

Git是一个免费开源分布式版本控制工具,是由Linux的作者Linus开发的第二个伟大作品。2005年由于BitKeeper软件公司对Linux社区停止了免费使用权。Linus迫不得己自己开发了一个分布式版本控制工具,从而Git诞生了 目前使用Git作为版本控制的开源软件&#…...

vue‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。

在Windows操作系统中,安装了nodeJs之后,并且也安装了vue依赖包,但是在cmd控制台运行vue的时候,会报错:vue‘ 不是内部或外部命令,也不是可运行的程序或批处理文件。针对这个问题我提供如下解决办法,并且是有效的。 一、原因分析 关于尝试这个问题的主要原因,我分析主要…...

JAVA安全—SpringBoot框架MyBatis注入Thymeleaf模板注入

前言 之前我们讲了JAVA的一些组件安全,比如Log4j,fastjson。今天讲一下框架安全,就是这个也是比较常见的SpringBoot框架。 SpringBoot框架 Spring Boot是由Pivotal团队提供的一套开源框架,可以简化spring应用的创建及部署。它提…...

Milvus向量数据库05-常见问题整理

Milvus向量数据库05-常见问题整理 1-什么是PipeLine 这张图展示了一个文档处理和搜索系统的架构,主要分为两个部分:Ingestion Pipeline(摄取管道)和 Search Pipeline(搜索管道)。下面是对图中各部分的详细…...

strncpy在复制含有多个\0的字符串时遇到的问题

strncpy在复制含有多个\0的字符串的时候,会产生截断,因为strncpy在读取源字符串的时候,遇到了\0,函数会认为该字符串已经结束了,然后会向目标字符串内填充\0。 char buffer[100] "ak\0jl";for (int i 0; i…...

C++作业3

作业1: 1.定义一个矩形类Rec,包含私有属性length、width,包含公有成员方法: void set_length(int l);//设置长度 Void set_width(int w);//设置宽度 Int get_length();//获取长度,将长度的值返回给调用处 Int get_widt…...

重生之我在学Vue--第1天 Vue 3 基础与开发环境搭建

重生之我在学Vue–第1天 Vue 3 基础与开发环境搭建 文章目录 重生之我在学Vue--第1天 Vue 3 基础与开发环境搭建前言一、Vue 3 的特点与核心概念二、搭建开发环境1. 安装 Node.js2. 使用 Vite 创建 Vue 3 项目创建项目进入项目目录并安装依赖启动开发服务器 3. 理解项目结构 三…...

企业经营数据分析系统:提升决策能力的利器

搭建企业经营数据分析系统是当今企业绕不开的话题,企业想要在竞争激烈的市场当中突围而出,需要对于企业内部的各种数据了然于胸,同时对于外部的数据也有敏锐的把握能力,因此企业构建自身的经营性数据分析系统就显得尤其重要。作为…...

Linux笔记9 DNS域名解析服务器

简介 DNS(Domain Name System)是互联网上的一项服务,它作为将域名和IP地址相互映射的一个分 布式数据库,能够使人更方便的访问互联网。 DNS使用的是53端口, 通常DNS是以UDP这个较快速的数据传输协议来查询的&#x…...

鸿蒙高级开发者认证的主观题试题及答案

以下是一份鸿蒙高级开发者认证的主观题试题及答案示例,涵盖了鸿蒙开发中的多个关键技术和应用场景相关内容,希望对你有所帮助: 一、论述题(每题 20 分,共 60 分) 1. 阐述鸿蒙操作系统中分布式软总线的工作原理、核心优势以及在多设备协同应用开发场景下的应用方式,并举…...

leetcode_547 省份数量

该题主要运用了图的连通性 接着使用染色法解决该问题 染色法:标记所有节点为false 访问后 将其标记位true class Solution {int n; // 代表n个数据bool colors[201]; // 标记是否访问到void dfs(vector<vector<int>>& isConnected, int u) { // …...

【开源】一款基于SpringBoot 的全开源充电桩平台

一、下载项目文件 下载源码项目文件口令&#xff1a;动作璆璜量子屏多好/~d1b8356ox2~:/复制口令后&#xff0c;进入夸克网盘app即可保存&#xff08;如果复制到夸克app没有跳转资源&#xff0c;可以复制粘贴口令到夸克app的搜索框也可以打开&#xff08;不用点搜索按钮&#…...

react antd tabs router 基础管理后台模版

在构建 React 后台管理系统时&#xff0c;使用标签页的方式展示路由是一种高效且用户友好的设计模式。这种实现方式通常允许用户在多个页面之间快速切换&#xff0c;并保留页面的状态&#xff0c;类似于浏览器的多标签页功能。 需求分析 1.动态标签页&#xff1a;根据用户的导…...

uniapp uni-table最简单固定表头

需求&#xff1a;固定表头数据&#xff0c;在网上找了半天&#xff0c;啥都有&#xff0c;就是一直实现不了&#xff0c;最后更改代码实现 1.效果 2.主要代码讲解完整代码 表格的父级一定要设置高度&#xff0c;不然会错位&#xff0c;我看网上说设置position&#xff1a;fixed…...

从0到1实现项目Docker编排部署

在深入讨论 Docker 编排之前&#xff0c;首先让我们了解一下 Docker 技术本身。Docker 是一个开源平台&#xff0c;旨在帮助开发者自动化应用程序的部署、扩展和管理。自 2013 年推出以来&#xff0c;Docker 迅速发展成为现代软件开发和运维领域不可或缺的重要工具。 Docker 采…...

Mac软件推荐

Mac软件推荐 截图SnipasteXnipBob 快捷启动Raycast 系统检测Stats 解压缩The UnarchiverKeka&#xff08;付费&#xff09; 视频播放IINA 视频下载Downie&#xff08;付费&#xff09; 屏幕刘海TopNotchMediaMate&#xff08;付费&#xff09;NotchDrop&#xff08;付费&#x…...

No.4 笔记 探索网络安全:揭开Web世界的隐秘防线

在这个数字时代&#xff0c;网络安全无处不在。了解Web安全的基本知识&#xff0c;不仅能保护我们自己&#xff0c;也能帮助我们在技术上更进一步。让我们一起深入探索Web安全的世界&#xff0c;掌握那些必备的安全知识&#xff01; 1. 客户端与WEB应用安全 前端漏洞&#xff1…...

Unity-Webview 使用指南

Unity-Webview 使用指南 Unity-Webview 主に gree/unity-webview のリファクタリング。本家を元に改良してく&#xff01; [这里是图片001] 项目地址: https://gitcode.com/gh_mirrors/uni/Unity-Webview Unity-Webview 是一个专为 Unity 开发的 WebView 插件&#xff0c;使开…...

【Vue】自定义指令、插槽

目录 自定义指令 是什么 作用 使用方法 定义 使用 自定义指令配合绑定数据 语法 自定义指令的简写 语法 使用时机 插槽 什么是插槽 默认&#xff08;匿名&#xff09;插槽 ​编辑插槽的默认值 具名插槽 使用方法 简写 使用示例 作用域插槽 自定义指令 是什…...

AI - RAG中的状态化管理聊天记录

AI - RAG中的状态化管理聊天记录 大家好&#xff0c;今天我们来聊聊LangChain和LLM中一个重要的话题——状态化管理聊天记录。在使用大语言模型(LLM)的时候&#xff0c;聊天记录&#xff08;History&#xff09;和状态&#xff08;State&#xff09;管理是非常关键的。那我们先…...

微服务网关SpringCloudGateway、Kong比较

网关产品 1. Spring Cloud Gateway 基本信息 Spring Cloud Gateway是Spring Cloud生态系统中的一个组件&#xff0c;基于Spring 5、Project Reactor和Spring Boot 2构建。它旨在为微服务架构提供一种简单而有效的API网关解决方案。 功能特点 路由功能强大&#xff1a;使用Rou…...

MVC基础语法

文章目录 项目地址一、MVC的传值方式1.1 ViewBag和ViewData传值1.1.1 ViewBag1.1.2 ViewData 1.2 视图模型传值&#xff08;ViewModel&#xff09; 二、HttpConntext上下文三、中间件 项目地址 教程作者&#xff1a;誉尚学教育教程地址&#xff1a; https://www.bilibili.com…...

Web day09 会话技术 JWT令牌 Filter Interceptor

目录 会话技术&#xff1a; 1.Cookie&#xff1a; 2.Session&#xff1a; 3.令牌技术&#xff1a; JWT令牌&#xff1a; 生成JWT令牌&#xff1a; 校验JWT令牌&#xff08;解析生成的令牌&#xff09; 登陆时下发令牌&#xff1a; 过滤器Filter&#xff1a; 拦截器Inte…...

OpenCV相机标定与3D重建(14)用于组合两个旋转和平移(R|T)变换函数composeRT()的使用

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::composeRT 是 OpenCV 库中的一个函数&#xff0c;用于组合两个旋转和平移&#xff08;R|T&#xff09;变换。这个函数可以将两个连续的刚体变…...

leetcode33.搜索旋转排序数组

整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k1], ..., nums[n-1], nums[0], nums[1], ..…...

TMS Software:TMS BIZ产品——TMS XData

TMS XData 用于多层REST/JSON HTTP/HTTPS应用服务器开发和ORM远程处理的Delphi框架。 TMS扩展数据可同时用于以下框架&#xff1a; VCLWEBFMX TMS XData可同时用于以下操作系统/浏览器&#xff1a; TMS XData可同时用于以下IDE&#xff1a; 功能概述 基于REST/JSON架构风格的…...

leecode中的面试100题

isalnum函数用于检查一个字符是否为字母或数字。它的参数是一个int类型 isupper() 是大写 islower() 是小写 toupper() 变成大写 tolower() 变成小写 do while 首先不管怎么 先执行do一次 然后执行完了之后 在判断while如果符合while里面就继续执行do vector容器中insert…...

不同类型的集成技术——Bagging、Boosting、Stacking、Voting、Blending简述

目录 一、说明 二、堆叠 2.1 堆叠的工作原理&#xff1a; 2.2 例子&#xff1a; 2.3 堆叠的优点&#xff1a; 三、投票&#xff08;简单投票&#xff09; 3.1 例子&#xff1a; 3.2 投票的优点&#xff1a; 四、装袋和投票之间的区别 五、混合 6.1 混合的主要特征&#xff1a; …...

【从零开始入门unity游戏开发之——C#篇01】理论开篇

文章目录 前言前置条件什么是编程&#xff1f;什么是代码&#xff1f;什么是编程语言&#xff1f;常见的编程语言什么是C#&#xff1f;学习Unity为什么要先学习C#&#xff1f;选择适合自己的IDE集成开发环境VSCode安装和环境配置VSCode调试模式专栏推荐完结 前言 这个系列我想…...

TCP的“可靠性”(上)

目录 TCP的“可靠性”&#xff08;上&#xff09;确认应答&#xff08;可靠性传输的基础&#xff09;超时重传连接管理&#xff08;三次握手&#xff0c;四次挥手&#xff09; TCP的“可靠性”&#xff08;上&#xff09; 想必大家都或多或少的听说过TCP的特性&#xff1a;有连…...

Windows平台Unity3D下如何低延迟低资源占用播放RTMP或RTSP流?

技术探讨 自2017年我们发布跨平台的低延迟Unity下的RTSP|RTMP直播播放器后&#xff0c;Unity下的直播体验有了质的提升&#xff0c;特别是RTMP&#xff0c;从大家认知里面的几秒钟&#xff0c;直接缩减到100-300ms&#xff0c;满足了绝大多数场景下低延迟的技术诉求。今天就Un…...

burp的编解码,日志,比较器

声明&#xff01; 学习视频来自B站up主 **泷羽sec** 有兴趣的师傅可以关注一下&#xff0c;如涉及侵权马上删除文章&#xff0c;笔记只是方便各位师傅的学习和探讨&#xff0c;文章所提到的网站以及内容&#xff0c;只做学习交流&#xff0c;其他均与本人以及泷羽sec团队无关&a…...

Vercel部署前端部署

Vercel 部署 今天要讲的是如何对别人向自己的开源仓库提的PR进行自动代码审核 1. 注册并登录Vercel 访问 Vercel官网点击右上角的"Sign Up"选择使用GitHub、GitLab、Bitbucket或邮箱注册完成注册流程并登录 2. 连接代码仓库 在Vercel仪表板,点击"New Proje…...

Jenkins相关的Api接口调用详解

Jenkins API是Jenkins持续集成和持续部署(CI/CD)平台提供的一组接口,允许外部程序通过HTTP请求与Jenkins进行交互。以下是对Jenkins API使用的简介: 一、Jenkins API的主要功能 作业管理:通过API,可以创建、配置、删除以及查询作业(Job)。构建触发:可以远程触发新的构…...

HBU深度学习实验15-循环神经网络(2)

LSTM的记忆能力实验 飞桨AI Studio星河社区-人工智能学习与实训社区 (baidu.com) 长短期记忆网络&#xff08;Long Short-Term Memory Network&#xff0c;LSTM&#xff09;是一种可以有效缓解长程依赖问题的循环神经网络&#xff0e;LSTM 的特点是引入了一个新的内部状态&am…...

洛谷P1364 医院设置(c嘎嘎)

题目链接&#xff1a;P1364 医院设置 - 洛谷 | 计算机科学教育新生态 题目难度&#xff1a;普及/提高 数据规模与约定&#xff1a; 对于 100%100% 的数据&#xff0c;保证 1≤n≤1001≤n≤100&#xff0c;0≤u,v≤n0≤u,v≤n&#xff0c;1≤w≤1051≤w≤105。 解题思路&…...

Java死锁问题如何解决?

大家好&#xff0c;我是锋哥。今天分享关于【Java死锁问题如何解决&#xff1f;】面试题。希望对大家有帮助&#xff1b; Java死锁问题如何解决&#xff1f; 1000道 互联网大厂Java工程师 精选面试题-Java资源分享网 Java中的死锁&#xff08;Deadlock&#xff09;是一种并发…...

go锁与chan的性能对比

锁的作用chan 的作用golang的数据并不是并发安全的为什么锁的性能更加优秀?如何选择? 锁的作用 解决并发安全问题,流程控制等 chan 的作用 线程通信(数据传输), 并发安全,流程控制 golang的数据并不是并发安全的 golang的变量并不是并发安全的锁与chan都可以解决并发安全…...

最小二乘法拟合出二阶响应面近似模型

背景&#xff1a;根据样本试验数据拟合出二阶响应面近似模型&#xff08;正交二次型&#xff09;&#xff0c;并使用决定系数R和调整的决定系数R_adj来判断二阶响应面模型的拟合精度。 1、样本数据&#xff08;来源&#xff1a;硕士论文《航空发动机用W形金属密封环密封性能分析…...

Scala的隐式转换

package hfdobject Test37 { //复习隐式转换//隐式转换&#xff1a;编译器 偷偷地&#xff0c;自动的帮我们把一种数据类型转换为另外一种类型//列如&#xff1a;int -->double//它有失败的时候&#xff08;double -->int),有成功的时候//当它转换失败的时候&#xff0c;…...

vue中父组件接收子组件的多个参数的方法:$emit或事件总线

方法一&#xff1a;使用 $emit 方法 原理 子组件通过 $emit 方法向父组件发送事件&#xff0c;同时可以传递多个参数&#xff0c;父组件通过事件监听来接收这些参数。 示例 子组件代码 <template><div><button click"sendData">发送数据</…...

网络安全法-网络安全支持与促进

第二章 网络安全支持与促进 第十五条 国家建立和完善网络安全标准体系。国务院标准化行政主管部门和国务院其他有关部门根据各自的职责&#xff0c;组织制定并适时修订有关网络安全管理以及网络产品、服务和运行安全的国家标准、行业标准。 国家支持企业、研究机构、高等学…...

prometheusgrafana实现监控告警

Prometheus负责集群数据的监控和采集&#xff0c;然后传递给grafana进行可视化&#xff0c;集成睿象云可实现监控报警&#xff0c;为了方便操作&#xff0c;可以通过iframe嵌套grafana到指定的页面。 文章目录 1.Grafana集成Prometheus2.iframe内嵌grafana3.监控告警 1.Grafana…...

php:完整部署Grid++Report到php项目,并实现模板打印

一、下载Grid++Report软件 路径:开发者安装包下载 - 锐浪报表工具 二、 安装软件 1、对下载的压缩包运行内部的exe文件 2、选择语言 3、 完成安装引导 下一步即可 4、接收许可协议 点击“我接受” 5、选择安装路径 “浏览”选择安装路径,点击"安装" 6、完成…...

【数据结构】基数排序的原理及实现

&#x1f466;个人主页&#xff1a;Weraphael ✍&#x1f3fb;作者简介&#xff1a;目前正在准备26考研 ✈️专栏&#xff1a;数据结构 &#x1f40b; 希望大家多多支持&#xff0c;咱一起进步&#xff01;&#x1f601; 如果文章有啥瑕疵&#xff0c;希望大佬指点一二 如果文章…...

Unix/Linux 命令行重定向操作

2>/dev/null 是一个常见的 Unix/Linux 命令行重定向操作&#xff0c;用于将标准错误&#xff08;stderr&#xff09;输出重定向到 /dev/null&#xff0c;即丢弃错误信息而不显示。理解这个表达式需要了解几个概念&#xff1a;文件描述符、重定向和特殊文件 /dev/null。 ###…...

leetcode周赛-3379. 转换数组

给你一个整数数组 nums&#xff0c;它表示一个循环数组。请你遵循以下规则创建一个大小 相同 的新数组 result &#xff1a; 对于每个下标 i&#xff08;其中 0 < i < nums.length&#xff09;&#xff0c;独立执行以下操作&#xff1a; 如果 nums[i] > 0&#xff1…...

D89【python 接口自动化学习】- pytest基础用法

day89 pytest的setup&#xff0c;setdown详解 学习日期&#xff1a;20241205 学习目标&#xff1a;pytest基础用法 -- pytest的setup&#xff0c;setdown详解 学习笔记&#xff1a; setup、teardown详解 模块级 setup_module/teardown_module 开始于模块始末&#xff0c;生…...

【Appium】AttributeError: ‘NoneType‘ object has no attribute ‘to_capabilities‘

目录 1、报错内容 2、解决方案 &#xff08;1&#xff09;检查 &#xff08;2&#xff09;报错原因 &#xff08;3&#xff09;解决步骤 3、解决结果 1、报错内容 在PyCharm编写好脚本后&#xff0c;模拟器和appium也是连接成功的&#xff0c;但是运行脚本时报错&…...

【机器人】轨迹规划 之 spline 规划

在轨迹规划中&#xff0c;使用 spline &#xff08;通常是指通过样条曲线进行轨迹规划&#xff09;可以实现平滑、连续的路径。以下是使用样条&#xff08;如B样条、三次样条插值&#xff09;的具体方法和步骤&#xff0c;结合一个简单的例子说明&#xff1a; 示例场景&#xf…...