【git】提交修改、回撤、回滚、Tag 操作讲解,与reset (--soft、--mixed、--hard) 的区别
Git 提交修改、回撤、回滚、Tag 操作详解
1. git commit --amend -m "message"
作用:修改最近一次提交的信息或内容。
适用场景:
- 提交后发现 commit message 写错了。
- 提交后发现 少
add
了文件,想直接加进上一次提交。
示例 1:修改 commit 信息
git commit --amend -m "修正提交信息"
💡 作用:修改上一次提交的说明,不影响文件内容。
示例 2:补充漏提交的文件
echo "new content" >> file.txt
git add file.txt
git commit --amend -m "补充提交文件"
💡 作用:把 file.txt
的修改加进上一次提交,而不会创建新的 commit。
⚠️ 注意:
- 如果已经
git push
了,要用git push --force
强制推送,否则远程仓库的历史会不一致。
2. 回撤 (git reset
)
命令 | 作用 | 影响 |
---|---|---|
git reset HEAD~1 | 回撤最近一次提交,保留改动 | 代码还在,回到 已暂存 状态 |
git reset --hard [commit] | 彻底回退到指定 commit,丢失所有后续修改 | 数据不可恢复,慎用! |
示例 1:撤销最近一次提交
git reset HEAD~1
💡 作用:撤销最近一次 commit
,但文件的改动还在 暂存区(可以 git add
重新提交)。
示例 2:强制回退到某个提交
git reset --hard abc123
💡 作用:彻底回退到 abc123
提交后,所有更改都会丢失,git log
里后面的提交都不见了。
⚠️ 注意:
- 如果已经 push 到远程,建议不要
reset --hard
,否则历史会不同步! - 若误操作,可尝试
git reflog
找回。
3. 回滚 (git revert
)
命令 | 作用 | 影响 |
---|---|---|
git revert [commit] | 回滚某个提交,生成一个新的撤销提交 | 不会丢失历史,适用于多人协作 |
git revert --abort | 取消 revert 操作 | 适用于发生冲突时放弃回滚 |
git revert --continue | 解决冲突后继续回滚 | 适用于手动解决冲突后继续回滚 |
示例 1:撤销某个提交
git revert abc123
💡 作用:生成一个新的提交来撤销 abc123
的修改,而不会修改历史。
示例 2:遇到冲突时,放弃回滚
git revert --abort
💡 作用:如果 git revert
过程中遇到冲突,放弃回滚,恢复到原来的状态。
示例 3:解决冲突后继续回滚
git revert --continue
💡 作用:如果 revert
过程中遇到冲突,手动修改后执行此命令继续回滚。
4. Git Tag 操作
命令 | 作用 |
---|---|
git tag | 查看所有本地 Tag |
git tag -a v1.0.1 -m "原神启动" | 创建一个 v1.0.1 的 Tag |
git push origin v1.0.1 | 推送 v1.0.1 到远程仓库 |
git push origin -d v1.0.1 | 删除远程 v1.0.1 Tag |
示例 1:创建一个 Tag
git tag -a v1.0.1 -m "原神启动"
💡 作用:给当前 commit
打上 v1.0.1
标签,-a
代表是带注释的标签。
示例 2:推送 Tag 到远程
git push origin v1.0.1
💡 作用:把 v1.0.1
Tag 推送到远程仓库。
- git tag 只是指向 commit,
与分支无关
,如果 远端仓库多个分支,dev 和 master 都包含这个提交,它们都会显示 tag。
示例 3:删除远程 Tag
git push origin -d v1.0.1
💡 作用:删除远程仓库的 v1.0.1
标签。
总结表格
操作 | 命令 | 作用 | 影响 |
---|---|---|---|
修改提交 | git commit --amend -m "message" | 修改最近一次提交 | 不会创建新 commit |
回撤提交 | git reset HEAD~1 | 撤销最近一次 commit,保留文件修改 | 提交记录消失,文件仍可修改 |
强制回退 | git reset --hard [commit] | 彻底回退到某个 commit,丢弃所有更改 | 不可恢复,慎用! |
回滚提交 | git revert [commit] | 生成一个新的 commit,撤销指定提交 | 不会影响历史,适合多人协作 |
取消回滚 | git revert --abort | 取消 revert 操作 | 适用于冲突时放弃回滚 |
继续回滚 | git revert --continue | 解决冲突后继续回滚 | 适用于手动解决冲突后继续回滚 |
查看 Tag | git tag | 显示所有 Tag | 仅本地 |
创建 Tag | git tag -a v1.0.1 -m "message" | 创建带注释的 Tag | 需要推送才会到远程 |
推送 Tag | git push origin v1.0.1 | 推送 v1.0.1 到远程 | 远程仓库可见 |
删除远程 Tag | git push origin -d v1.0.1 | 删除远程 v1.0.1 | 远程仓库不再可见 |
🔹 总结
git commit --amend
用于修改最近一次提交,避免新建 commit。git reset
用于回撤提交,但可能会影响历史,慎用--hard
。git revert
用于回滚提交,不会影响历史,适合多人协作。git tag
用于标记特定版本,方便管理版本发布。
Git reset
三种模式 (--soft
、--mixed
、--hard
) 的区别
git reset
是 Git 中常用的命令,它用于回退提交、撤销更改,并有三种主要模式:
--soft
:仅回退 commit,保留已暂存的修改。--mixed
(默认):回退 commit + add,但保留文件修改。--hard
:回退 commit + add + 文件修改,所有改动都被丢弃。
1. git reset --soft HEAD~1
作用
- 回退到上一个 commit
- 保留所有代码改动,且仍然是已暂存状态
- 适合想重新提交 commit 的情况
示例
echo "hello" > file.txt
git add file.txt
git commit -m "第一次提交"
echo "world" >> file.txt
git add file.txt
git commit -m "第二次提交"git reset --soft HEAD~1
执行效果
git log
撤销最近一次 commit(“第二次提交” 消失)- 但
git status
仍然显示file.txt
处于已暂存状态 - 可以直接
git commit -m "修正提交"
重新提交
适用场景
✅ 提交错误时,希望修改 commit(但不想重新 add
)
✅ 想合并多个 commit(如 git commit --amend
)
2. git reset HEAD~1
(等价于 git reset --mixed HEAD~1
)
作用
- 回退 commit
- 取消
git add
,但保留代码改动 - 适合误提交文件,但不想丢失代码的情况
示例
echo "hello" > file.txt
git add file.txt
git commit -m "第一次提交"
echo "world" >> file.txt
git add file.txt
git commit -m "第二次提交"git reset HEAD~1
执行效果
git log
撤销最近一次 commit(“第二次提交” 消失)git status
显示file.txt
变为未暂存(未add
)- 代码内容仍然存在,可重新
git add
并提交
适用场景
✅ 误提交 commit,想撤销但保留文件
✅ 误 git add
,想撤销 add
但不影响文件内容
3. git reset --hard HEAD~1
作用
- 回退 commit
- 取消
git add
- 丢弃所有未提交的代码修改
- 适合彻底回退到某个提交版本
示例
echo "hello" > file.txt
git add file.txt
git commit -m "第一次提交"
echo "world" >> file.txt
git add file.txt
git commit -m "第二次提交"git reset --hard HEAD~1
执行效果
git log
撤销最近一次 commit(“第二次提交” 消失)git status
为空,file.txt
也恢复到上一个 commit 的状态- 代码改动彻底丢失,无法找回(除非
git reflog
)
适用场景
✅ 彻底回滚代码,不保留更改
✅ 想回到某个历史版本,丢弃之后的所有代码
⚠️ 警告:git reset --hard
不可逆,谨慎使用!
4. git reset
三种模式对比
模式 | 撤销 Commit 记录 | 撤销 git add | 撤销文件修改 | 适用场景 |
---|---|---|---|---|
git reset --soft HEAD~1 | ✅ | ❌ | ❌ | 提交信息错误,但代码不变 |
git reset HEAD~1 | ✅ | ✅ | ❌ | 误提交 commit 或 add,但代码不变 |
git reset --hard HEAD~1 | ✅ | ✅ | ✅ | 彻底回滚代码,不可恢复 |
1. git reset --hard abc123
详解
git reset --hard abc123
作用:
git reset --hard abc123
的作用是 彻底回退到 abc123
这个提交,并丢弃后续的所有更改。
- 重置暂存区
- 重置工作区
- 重置abc123之后的所有提交
2. 举个例子
假设 git log --oneline
现在是:
f4e3d2b (HEAD -> master) 第四次提交
c3b2a1d 第三次提交
b2a1c3e 第二次提交
a1b2c3d 第一次提交
如果执行:
git reset --hard b2a1c3e
那么 git log --oneline
变成:
b2a1c3e (HEAD -> master) 第二次提交
a1b2c3d 第一次提交
第三次
和 第四次
提交都消失了(但可以用 git reflog
找回)。
3. git reset --hard
的风险
- 如果已经
git push
过,你这样回退后,本地历史和远程仓库就不一致了。 - 其他人在拉取(
pull
)时可能会遇到冲突,甚至代码丢失。 - 一旦
reset --hard
,后续提交就不会在git log
里,如果不懂git reflog
,可能很难恢复。
4. 如果误操作了怎么办?
可以使用:
git reflog
它会显示所有 HEAD
变更的历史,比如:
f4e3d2b HEAD@{0}: reset: moving to b2a1c3e
c3b2a1d HEAD@{1}: commit: 第四次提交
b2a1c3e HEAD@{2}: commit: 第三次提交
你可以用 reflog
找回 HEAD
之前的提交:
git reset --hard f4e3d2b
这样就恢复到了 f4e3d2b
(原来的最新提交)。
5. git reset --hard
的推荐使用场景
✅ 本地代码写错了,想回到某个版本(但未 push
)。
✅ 需要清理暂存区和工作区(相当于 git clean -df
+ git checkout .
)。
✅ 调试时想快速回滚到某个版本。
⚠️ 不要在多人协作时随便用 reset --hard
,否则可能造成代码丢失!
🚀 如果已经 push
了,建议使用 git revert
代替 reset
。
总结
命令 | 作用 | 是否影响 commit 记录 |
---|---|---|
git reset --soft abc123 | 回退到 abc123 ,但保留修改 | ✅ 记录保留 |
git reset --mixed abc123 | 回退到 abc123 ,工作区保留但取消暂存 | ✅ 记录保留 |
git reset --hard abc123 | 彻底回退到 abc123 ,丢弃所有更改 | ❌ 记录被删除(可用 reflog 找回) |
🔥 一般推荐 reset --soft
或 reset --mixed
,reset --hard
要谨慎使用!
https://github.com/0voice
相关文章:
【git】提交修改、回撤、回滚、Tag 操作讲解,与reset (--soft、--mixed、--hard) 的区别
Git 提交修改、回撤、回滚、Tag 操作详解 1. git commit --amend -m "message" 作用:修改最近一次提交的信息或内容。 适用场景: 提交后发现 commit message 写错了。提交后发现 少 add 了文件,想直接加进上一次提交。 示例 1&…...
【设计模式】【创建型模式】抽象工厂模式(Abstract Factory)
👋hi,我不是一名外包公司的员工,也不会偷吃茶水间的零食,我的梦想是能写高端CRUD 🔥 2025本人正在沉淀中… 博客更新速度 👍 欢迎点赞、收藏、关注,跟上我的更新节奏 🎵 当你的天空突…...
Embedding模型介绍部署部署
概述 是一种将高维数据(如文本、图像、音频)映射到低维空间的技术,其中每个数据点由实数构成的向量表示,这些向量在向量空间中的位置反映了数据的语义特征。这种技术广泛应用于自然语言处理和机器学习中,使得计…...
web网络安全:跨站脚本攻击(XSS)
跨站脚本攻击(XSS)概述 跨站脚本攻击(XSS,Cross-Site Scripting) 是一种常见的 Web 安全漏洞,攻击者通过向受信任的网站注入恶意脚本(通常是 JavaScript),诱使其他用户在…...
【C++】 Flow of Control
《C程序设计基础教程》——刘厚泉,李政伟,二零一三年九月版,学习笔记 文章目录 1、选择结构1.1、if 语句1.2、嵌套的 if 语句1.3、条件运算符 ?:1.4、switch 语句 2、循环结构2.1、while 语句2.2、do-while 语句2.3、 for 循环2.4、循环嵌套…...
Kafka中commitAsync的使用与实例解析
在使用Apache Kafka进行消息处理时,正确管理偏移量(offset)是确保数据一致性和可靠性的重要环节。Kafka提供了多种方式来提交偏移量,其中commitAsync()方法是一种高效且灵活的选择。本文将通过一个完整的实例,详细介绍…...
上海餐饮冷藏配送全方案 一站式服务助企提速发展
在上海这座国际化大都市中,餐饮行业以其繁荣与多元著称。消费者对食品安全和品质要求的日益提高,餐饮冷链运输成为了保障餐饮供应链稳定、高效的关键环节。近日,华鼎冷链科技凭借其创新的一站式服务方案,在上海餐饮冷链领域脱颖而…...
基于微信小程序的电影院订票选座系统的设计与实现,SSM+Vue+毕业论文+开题报告+任务书+指导搭建视频
本系统包含用户、管理员两个角色。 用户角色:注册登录、查看首页电影信息推荐、查看电影详情并进行收藏预定、查看电影资讯、在线客服、管理个人订单等。 管理员角色:登录后台、管理电影类型、管理放映厅信息、管理电影信息、管理用户信息、管理订单等。…...
Java 面试笔记 - Java基础
1 、JDK、JRE 和 JVM 是 Java 开发与运行环境中的三个核心组件,它们之间的关系和区别如下: 1. JDK (Java Development Kit) 定义:JDK 是 Java 开发工具包,包含了开发 Java 应用程序所需的所有工具和库。包含内容: 编…...
基于MFC实现的键盘电子乐器演奏程序
基于MFC实现的键盘电子乐器演奏程序设计 1.项目简介 需要连接西电微机原理实验室提供的 QTH9054 微机试验箱,使用其蜂鸣器发声,若不连接,程序会直接播放 mp3 文件模拟钢琴声。 请在 release 处下载编译好的 exe 文件运行,如需计…...
支持批量导出的软件,效率拉满!
今天给大家分享一款超实用的软件,它能帮你批量导出PPT里的图片,简直是提升工作效率的神器! PPT转jpg PPT逐页导出为图片 这款软件超级简单易用,打开就能直接上手,不需要复杂的设置。 这个软件有三种功能, …...
AI前端开发:职业晋升的加速器
在数字经济时代,前端开发领域正在经历一场由人工智能 (AI) 技术驱动的深刻变革。掌握AI技能,已不再是锦上添花,而是成为前端工程师职业晋升的关键竞争力。本文将探讨AI写代码工具等AI技术如何重塑前端开发职业路径,以及如何通过学…...
在mfc中使用自定义三维向量类和计算多个三维向量的平均值
先添加一个普通类, Vector3.h, // Vector3.h: interface for the Vector3 class. // //#if !defined(AFX_VECTOR3_H__53D34D26_95FF_4377_BD54_57F4271918A4__INCLUDED_) #define AFX_VECTOR3_H__53D34D26_95FF_4377_BD54_57F4271918A4__INCLUDED_#if _MSC_VER > 1000 #p…...
RK3588配置成为路由器
文章目录 前言一、配置netplan二、安装hostapd1.创建hostapd.conf文件2.安装软件3.修改启动文件4.修改/etc/default/hostapd 文件 三、安装dnsmasq服务四、配置NET及重启验证五、常见问题总结 前言 RK3588开发板有两个网口,一个无线网卡。我需要配置为家用路由器模…...
力扣-回溯-40 组合总和Ⅱ
思路 需要实现树枝层面的去重,利用use数组来判别,如果前一个节点已经使用了,说明这是在往深处遍历了,允许重复,如果前一个节点没有使用且值相同的话,说明是在树枝上重复了 代码 class Solution { public…...
深入理解 Rust 中的 `Box<T>`:堆上的数据与递归类型
1. Box<T> 的基础知识 1.1 堆与栈的分工 在默认情况下,Rust 会将变量存储在栈上。然而,栈的空间有限,且对于大小未知或极大的数据来说,栈并不适用。使用 Box<T>,我们可以将数据存放在堆上,而…...
js原型和原型链,到底咋回事?
js原型和原型链,到底咋回事? js原型的原理 在 JavaScript 里,每个对象都有一个“隐藏的小伙伴”,这个“小伙伴”就是原型。可以把原型想象成一个模板或者一个仓库,对象能从它这个“小伙伴”那里借用一些属性和方法。…...
深入理解IP地址与端口:网络通信的基石
深入理解IP地址与端口:网络通信的基石 文章大纲 网络通信基础概念 1.1 什么是网络通信1.2 OSI模型与TCP/IP模型1.3 数据包传输原理 IP地址深度解析 2.1 IP地址定义与作用2.2 IPv4与IPv6对比2.3 子网划分与CIDR表示法2.4 公网IP与私网IP2.5 特殊IP地址详解 端口机…...
ubuntu系统本地部署deepseek
1、安装ollama 用Ollama部署deepseek模型,官网地址:https://ollama.com/download 根据官网给出的命令直接安装(安装linux版本) curl -fsSL https://ollama.com/install.sh | sh2、安装deepseek-r1模型 我这里用了8b,…...
nginx ngx_http_module(10) 指令详解
nginx ngx_http_module(10) 指令详解 nginx 模块目录 nginx 全指令目录 一、目录 1.1 模块简介 ngx_http_v2_module:HTTP/2支持模块,允许Nginx通过HTTP/2协议与客户端进行通信。HTTP/2带来了许多性能优化,如多路复用、头部压缩和服务器推…...
rman 备份恢复1
前提: rman用户必须具有sysdba权限 使用常用连接方式如下: rman target / rman target sys/oracle rman target sys/oracleprod1 catalog dav/oracledav_db 一个rman连接会产生两个进程,action字段为空的就是rman的监控进程,另…...
BeautifulSoup、lxml/XPath和正则表达式在数据爬取中的适用场景
在数据爬取中,BeautifulSoup、lxml/XPath和正则表达式的适用场景各有侧重,具体选择需根据数据特征和需求权衡: 1. BeautifulSoup(结合CSS选择器) 适用场景 简单结构页面:标签层级清晰、属性固定的HTML页面…...
Python装饰器本质250220
定义一个函数,在不修改这个函数的代码的情况下,让函数执行前后会有新的内容加入 def func():print("func")return def outer():def inner():print("new code before")func()print("new code after")returnreturn inner f…...
实时、分时、半实时半分时操作系统
在操作系统中,实时、分时、半实时半分时是三种不同的调度策略,它们决定了系统如何分配和管理CPU资源。以下是它们的定义和举例: 1. 实时操作系统(RTOS, Real-Time Operating System) 定义:实时操作系统是…...
玩转Docker | 使用Docker部署本地自托管reference速查表工具
玩转Docker | 使用Docker部署本地自托管reference速查表工具 前言一、Reference介绍Reference简介主要特点二、系统要求环境要求环境检查Docker版本检查检查操作系统版本三、部署reference服务下载镜像创建容器检查容器状态检查服务端口安全设置四、访问reference应用五、测试与…...
基于springboot校园健康系统的设计与实现(源码+文档)
大家好我是风歌,今天要和大家聊的是一款基于springboot的园健康系统的设计与实现。项目源码以及部署相关请联系风歌,文末附上联系信息 。 项目简介: 基于springboot校园健康系统的设计与实现的主要使用者管理员具有最高的权限,通…...
孤独症项目(1)
年也过了,也不能一直玩,该学习还是要学习。 过年前我算是把环境配置好,然后把项目跑起来了,现在的问题是我看不懂这个代码什么意思 代码还是要一行一行看,每一行都看懂了,全文自然就知道了 1 from pathlib…...
DeepSeek 冲击(含本地化部署实践)
DeepSeek无疑是春节档最火爆的话题,上线不足一月,其全球累计下载量已达4000万,反超ChatGPT成为全球增长最快的AI应用,并且完全开源。那么究竟DeepSeek有什么魔力,能够让大家趋之若鹜,他又将怎样改变世界AI格…...
《被讨厌的勇气》(七)
1.共同体感觉是幸福的人际关系的最重要的指标。 2.把对自己的执著变成对他人的关心。 3.不能进行“课题分离”、一味拘泥于认可欲求的人也是及其以自我为中心的人。 4.一味在意“他人怎么看”的生活方式正式只关心“我”的自我中心式的生活方式。 5.别人并不是为了满足你的期待…...
【Word转PDF】在线Doc/Docx转换为PDF格式 免费在线转换 功能强大好用
在日常办公和学习中,将Word文档转换为PDF格式的需求非常普遍。无论是制作简历、撰写报告还是分享文件,都需要确保文档格式在不同设备上保持一致。而小白工具的“Word转PDF”功能正是为此需求量身打造的一款高效解决方案。 【Word转PDF】在线Doc/Docx转换…...
SpringCloud面试题----eureka和zookeeper都可以提供服务注册与发现的功能,请说说两个的区别
dEureka 和 Zookeeper 都可以提供服务注册与发现的功能,它们的区别主要体现在以下几个方面: 设计理念 Eureka:是基于 RESTful 风格设计的,强调简单、轻量级,旨在为微服务架构提供一种易于使用的服务发现解决方案,注重服务的可用性和灵活性。Zookeeper:最初是为分布式协…...
Matplotlib中strpdate2num()函数报错的解决方法
在Matplotlib绘图时,有时会从文件中读取形如“2025/2/20”格式的日期数据,在读取了日期数据后,会通过Matplotlib.dates.strpdate2num()函数将日期格式变为浮点数进行绘制。 1 matplotlib.dates不再支持strpdate2num()函数 使用matplotlib.d…...
easyexcel 2.2.6版本导出excel模板时,标题带下拉框及其下拉值过多不显示问题
需求背景:有一个需求要做下拉框的值有100多条,同时这个excel是一个多sheet的导入模板 直接用easyexcel 导出,会出现下拉框的值过多,导致生成出来的excel模板无法正常展示下拉功能 使用的easyexcel版本:<depende…...
Java链表全解析:从单向链表到双向链表的实现与优化
一、链表的核心特性 链表是一种通过 节点 存储数据的线性数据结构,每个节点包含 数据域 和 指针域。节点在内存中 不连续存储,通过指针串联。 1.单向链表 2.双向链表 3.环形链表 环形单链表 环形双链表 4.链表的类型 类型结构描述典型应用场景单向链表每个节点只有 一个指…...
《动手学机器人学》笔记
目录 0.介绍1.概述|空间位置、姿态的描述(33)|《动手学机器人学》2.(2)-Robotics Toolbox①(V10.4)3.齐次坐标与变换矩阵4.一般形式的旋转变换矩阵5.(轴角法)…...
【小游戏】C++控制台版本俄罗斯轮盘赌
制作团队:洛谷813622(Igallta) 989571(_ayaka_) Mod:_ayaka_ 双人模式:Igallta 公告: 原先的9.8改名为 Alpha 1.0,以后每次更新都增加 0.1。 Alpha 1.11 改为 Beta 1…...
最新扣子(Coze)案例教程:全自动DeepSeek 写影评+批量生成 + 发布飞书,提效10 倍!手把手教学,完全免费教程
👨💻群里有同学是做影视赛道的博主,听说最近DeepSeek这么火,咨询能不能用DeepSeek写影评,并整理电影数据资料,自动发布到飞书文档,把每天的工作做成一个自动化的流程。 那今天斜杠君就为大家…...
Java集合框架之ArrayList解析
目录 一、ArrayList概述 二、优缺点分析 三、底层数据结构 四、源码分析ArrayList初始化容量 五、源码分析ArrayList扩容策略 六、ArrayList集合源码分析 1. 属性分析 2. 构造方法分析 无参构造方法 指定初始容量的构造方法 传入集合的构造方法 3. 添加元素 add(E…...
idea 2023.3.7常用插件
idea 2023.3.7常用插件 文档 idea 2019.3常用插件idea 2023.3.7常用插件 idea 2023.3.7常用插件 插件名称插件版本说明1AceJump3.5.9AceJump允许您快速将插入符号导航到编辑器中可见的任何位置。只需按“ctrl;”,键入一个字符,然后在Ace …...
IM聊天系统架构实现
一、IM系统整体架构 二、企业级IM系统如何实现心跳与断线重连机制; 1、重连机制(服务端下线) 服务端下线,客户端netty可以感知到,在感知的方法中进行重连的操作,注意重连可能连接到旧的服务器继续报错&…...
vue3可选链操作符(?.)
一、定义: 可选链操作符(?.)是 JavaScript 中的一个语法,用于安全地访问对象的属性,即使该对象为 null 或 undefined,也不会抛出错误,而是返回 undefined。 1、不使用可选链操作符࿱…...
科普:Docker run的相关事项
一、镜像名(含标签)太长 如,通过如下命令行: docker pull designthru2019/dify:56c6d1af0944dbdb5e0115cb623ff0e118a4ac62拉取的镜像名(及标签)太长,可以通过改名的方法变短。 在 Docker 中&…...
petalinux高版本设置自动登录和开机自启动配置
petalinux-config -c rootfs 依次选择 Image Features -> serial-autologin-root 这是配置 进来就是root权限 创建并安装名为 myapp-init 的新建应用程序 petalinux-create -t apps --template install -n myapp-init --enable 编辑 project-spec/meta-user/recipes-…...
算法刷题-哈希表的总结
什么时候用数组、什么时候用map呢? 经常会混淆。 混淆1:例如有时候题目可能要求在一大堆元素里找目标元素,要求不能利用用过的字母,这就会让我想到只包含一个键值的set或者是map,但实际上忽略了字母(限定大…...
如何通过 Homebrew 安装 Qt 并配置环境变量
如何通过 Homebrew 安装 Qt 并配置环境变量 Qt 是一个跨平台的应用程序开发框架,广泛用于开发图形界面应用。本文将详细介绍如何在 macOS 上通过 Homebrew 安装 Qt 并配置环境变量,以便在终端和 Qt Creator 中使用 Qt 工具。 步骤 1:安装 Ho…...
RESTful 的特点与普通 Web API 的区别
RESTful 是一种设计风格,而不仅仅是普通的 Web API。它遵循一些特定的原则和约束,使得 API 更加简洁、可扩展和易于理解。以下是 RESTful 的特点,以及与普通 Web API 的区别: RESTful 的特点 1. 资源导向 RESTful API 的核心是资…...
Java和JavaScript当中的json对象和json字符串分别讲解
Java和JavaScript当中的json对象和json字符串分别讲解 一、Java当中的json对象和json字符串 在 Java 中,JSON 对象和 JSON 字符串有不同的表示和操作方式。 1. JSON 对象: 如果你使用的是 org.json 库,创建 JSON 对象的代码如下࿱…...
ARM64 Trust Firmware [四]
完成第二阶段 BL2 的操作后就加载并进入 BL31,BL31 位于 DRAM 中,EL3 模式。除了做架构初始化和平台初始化外,还做了如下工作: 基本硬件初始化,比如 GIC,串口,timer 等;PSCI 服务的…...
CHARMM-GUI EnzyDocker: 一个基于网络的用于酶中多个反应状态的蛋白质 - 配体对接的计算平台
❝ "CHARMM-GUI EnzyDocker for Protein−Ligand Docking of Multiple Reactive States along a Reaction Coordinate in Enzymes"介绍了 CHARMM-GUI EnzyDocker,这是一个基于网络的计算平台,旨在简化和加速 EnzyDock 对接模拟的设置过程&…...
Sklearn常用算法及建模流程总结
Scikit-learn(简称 Sklearn)是 Python 中最流行的机器学习库之一,提供了丰富的算法和工具用于数据预处理、模型训练、评估和调优。下面整理了一些常用算法及建模流程,供大家参考学习。 1.常用算法分类 1. 监督学习(S…...